CORS飞行前响应不成功

问题描述 投票:-1回答:1

当从axios中获取API时,我得到了以下错误信息

跨源请求被阻止。同源策略不允许读取远程资源,在 https:/...bla bla.... (原因:CORS飞行前响应不成功)

跨源请求被阻止。同源策略不允许读取远程资源,在 https:/...bla bla...... (原因:CORS请求不成功)

我认为第二个错误是因为第一个错误。这里主要是修复第一个错误。

行动.js

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))
            })
    }
}
reactjs react-redux axios cors
1个回答
-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))
            })
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.