서버 와일드카드 원본에 대한 Browser Fetch Cors 설정

Cors 문제는 특히 서버가 모든 것을 허용하지만 가져오기에서 여전히 오류가 발생하는 경우 골칫거리입니다. 여기 수정 사항이 있습니다.

fetch(`http://endpoint.com`, {
  method: 'GET', // *GET, POST, PUT, DELETE, etc.
  mode: 'cors', // no-cors, *cors, same-origin
  cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached
  credentials: 'omit', // include, *same-origin, omit
  headers: {
    'Content-Type': 'application/json'
  },
})
.then((res) => res.json())
.then((data)=> {
  console.log('data', data)
})


Axios는 일부 cors 상황에서 작동하지 않을 수 있습니다.
이것thread의 인용문에서 :

It's important to note is that mode, credentials, and crossdomain aren't supported for configuring Axios. The reason why your example works when using fetch is because those options are part of the Request API (docs for mode are here).



요청 시 나타날 수 있는 오류:

"Uncaught (in promise) SyntaxError: Unexpected end of input"

"Access to fetch at '...' from origin 'null' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'"

"JSON.parse: unexpected end of data at line 1 column 1 of the JSON data"

좋은 웹페이지 즐겨찾기