从axios提取API时,出现以下错误
跨源请求被阻止:同源策略禁止阅读 位于https://...bla的远程资源。...(原因:CORS预检 响应未成功)
跨源请求被阻止:同源策略禁止阅读 位于https://...bla bla .....的远程资源(原因:CORS请求 没有成功)
我认为第二个错误是由于第一个错误。这里最主要的是修复第一个错误。
export const getMetadata = srNumber => {
return (dispatch) => {
dispatch(getMetadataRequest())
axios.get(`${BASE_URL}/some path/${srNumber}`, {
headers: {
'X-JWT-Assertion': ASSERTION,
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': '*',
'Access-Control-Allow-Credentials': 'true',
'Access-Control-Allow-Headers': 'Content-Type, Authorization'
}
})
.then(response => {
const data = response.data
console.log("GET METADATA", data)
dispatch(getMetedataSuccess(data))
})
.catch(error => {
const errorMessage = error.message
console.error("GET METADATA", errorMessage)
dispatch(getMetadataFailure(errorMessage))
})
}
}
答案 0 :(得分:-2)
尝试一下:
const options = {
method: 'GET',
headers: {
// add header which is required for the call, please dont add response headers
}
url: `${BASE_URL}/some path/${srNumber}`,
};
export const getMetadata = srNumber => {
return (dispatch) => {
dispatch(getMetadataRequest())
axios(options)
.then(response => {
const data = response.data
console.log("GET METADATA", data)
dispatch(getMetedataSuccess(data))
})
.catch(error => {
const errorMessage = error.message
console.error("GET METADATA", errorMessage)
dispatch(getMetadataFailure(errorMessage))
})
}
}