按照说明设置Amazon API Gateway CORS后,发送Ajax POST请求时仍会出现以下错误。
XMLHttpRequest无法加载https://-------.execute-api.us-west-2.amazonaws.com/--------。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://------.s3-website-us-west-2.amazonaws.com”访问。响应的HTTP状态代码为400。
我正在使用Amazon S3来托管该网站,该网站不支持网页脚本,因此我无法使用python或php来修复此问题。
我真的很感激任何帮助。
答案 0 :(得分:0)
您是否正在使用Lambda-proxy集成并且您的Lambda没有返回这些标头?如果是这种情况,您必须自己添加这些标题。
这是我使用callback(null, response)
创建回复的方式。
function createResponse(statusCode, body) {
const headers = {
'Access-Control-Allow-Origin': '*',
}
return {
headers,
statusCode,
body: body ? JSON.stringify(body) : undefined,
}
}