Notice
Recent Posts
Recent Comments
Link
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

개발블로그

CORS (2018.06.24) 본문

CORS (2018.06.24)

학교옆메추리 2020. 5. 28. 13:32

CORS : Cross Origin Resource Sharing

Script 내에서 다른 도메인에 리소스를 요청하는 Cross-Site HTTP Requests는 보안 상의 이유(Same Origin Policy)로 불가능했었는데, 이를 가능하게 하면서 만들어진 일종의 규약.

Simple Request

—GET, HEAD, POST 중의 한 가지 방식을 사용해야 한다.

— POST 방식일 경우 Content-type이 아래 셋 중의 하나여야 한다.

  • application/x-www-form-urlencoded
  • multipart/form-data
  • text/plain

— 커스텀 헤더를 전송하지 말아야 한다.

Preflight Request

Simple Request에 해당하지 않으면 이 방식으로 요청.

  1. 서버에 예비 요청(Preflight Request)을 보냄 → 서버의 응답
  2. 서버에 본 요청(Actual Request)을 보냄 → 서버의 응답

My Problem

서버에 요청 시 Preflight Request에서 막힘

→ 서버측에서 Access-Control-Allow-Origin: *, Access-Control-Allow-Methods: OPTIONS …etc 를 지정하여 해결하려 했으나 문제가 고쳐지지 않음

→ webpack config devServer의 proxy설정을 바꾸고 난 후 문제 해결

config.devServer = {
	disableHostCheck: true,
	host: "0.0.0.0",
    publicPath: "/",
    historyApiFallback: true,
    proxy: {
      "/api/": {
      target: "__URL__",
      secure: false,
      logLevel: "silent"
    }
}

→ server와 local사이에 proxy Server를 두어 간접적으로(우회하여) sever에 접근한다!

'' 카테고리의 다른 글

JS prototype (2018.10.01)  (0) 2020.05.28
Redux (2018.06.30)  (0) 2020.05.28
Immutable.js (2018.06.26)  (0) 2020.05.28
Webpack (2018.06.23)  (0) 2020.05.28
BABEL (2018.06.22)  (0) 2020.05.28