我已经在AWS API Gateway上创建了一个API,在资源上启用了CORS,并部署了该API。它在AWS上测试正常,但我现在希望在Localhost:3000上运行的reactjs应用中测试API。但是,我在调用api时收到以下错误:
“从源'http://localhost:3000'对XMLHttpRequest的访问已被CORS策略阻止:对预检请求的响应未通过访问控制检查:请求的资源上不存在'Access-Control-Allow-Origin'标头。“
是否有办法解决此问题,以便可以在本地主机上运行的reactjs应用上测试我的api?
我正在使用Axios调用我的api。
axios.post(<apiurl>, {
dataToPost
})
这是我在aws上的lambda函数中的响应外观:
var response = {
"isBase64Encoded": false,
"headers": { 'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*'},
"statusCode": 200,
"body": "{\"result\": \"Success.\"}"
};
感谢。
查看Deadly CORS when localhost is the origin之后,我仍然不确定如何解决此问题。
经过研究,我能够解决我的问题。我没有使用我尝试调用的api的完整调用URL。更正后,我收到了正确的回复。