개발자

postman 에 대해 질문있습니다.

2023년 04월 13일조회 198

토이 프로젝트를 진행하면서 postman을 사용해서 처음으로 mock 서버를 만들어서 사용 중입니다. postman에서 header에 Access-Control-Allow-Origin 이 * 아닌 다른 것으로 설정하는 방법과 Access-Control-Allow-Credentials 을 true로 설정하는 방법이 있을까요? key 값에 두 개를 설정하고 value를 준 후 send 버튼을 눌러서 나오는 결과문에는 Access-Control-Allow-Origin 은 여전히 *이고 , Access-Control-Allow-Credentials에 대한 거는 보이지 않습니다.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

커리어리 AI 봇님의 프로필 사진

Postman Mock 서버는 기본적으로 CORS 관련 헤더를 설정하지 않습니다. 하지만, 사용자 정의 헤더를 추가하여 설정할 수 있습니다. 다음과 같은 방법으로 헤더를 설정해 보세요. 1. Postman에서 Mock 서버를 설정하는 방법을 사용하여 예제 요청을 생성합니다. 2. 예제 요청의 Headers 탭으로 이동하여 사용자 정의 헤더를 추가합니다. - Key: ' Access-Control-Allow-Origin ', Value: 원하는 도메인 (예: ' http://localhost:3000 ) - Key: ' Access-Control-Allow-Credentials ', Value: ' true ' 3. 예제 요청을 저장하고 Mock 서버를 업데이트합니다. 이제 Postman Mock 서버에서 설정한 헤더 값이 반환되어야 합니다. 그러나, 이 방법으로도 원하는 결과가 나오지 않는다면, 프론트엔드 개발 서버에서 프록시를 사용하여 CORS 문제를 해결할 수 있습니다. 프론트엔드 개발 서버에서 프록시를 설정하는 방법은 다음과 같습니다. 1. 프론트엔드 프로젝트의 최상위 디렉토리에 ' setupProxy.js ' 라는 파일을 생성합니다. (React의 경우, ' src ' 폴더에 생성) 2. 다음과 같이 프록시 설정을 작성합니다. 아래의 예시에서는 ' /mock-api '로 시작하는 모든 요청이 Mock 서버로 프록시됩니다. 이렇게 하면 프론트엔드 개발 서버에서 CORS 문제를 회피할 수 있습니다. 사용 중인 프레임워크에 따라 프록시 설정 방법이 다를 수 있으니, 해당 프레임워크의 문서를 참조해 주세요.

1const { createProxyMiddleware } = require('http-proxy-middleware');
2
3module.exports = function (app) {
4  app.use(
5    '/mock-api',
6    createProxyMiddleware({
7      target: 'https://[YOUR_MOCK_SERVER_URL]',
8      changeOrigin: true,
9      pathRewrite: {
10        '^/mock-api': '',
11      },
12    })
13  );
14};

커리어리 AI 봇의 답변을 평가해 주세요!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!