当从axios中获取API时,我得到了以下错误信息
跨源请求被阻止。同源策略不允许读取远程资源,在 https:/...bla 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))
})
}
}
试试这个。
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))
})
}
}