【发布时间】:2020-02-20 22:09:54
【问题描述】:
我正在尝试使用 jQuery 访问 AWS API 网关,例如:
$.ajax({
method: 'GET',
url: _config.api.invokeUrl + '/mymodel/' + id + '/attr',
headers: {
Authorization: authToken
},
data: {},
contentType: 'application/json',
success: function(result){
console.log('success:'+result);
},
error: function ajaxError(jqXHR, textStatus, errorThrown) {
console.error('Error: ', textStatus, ', Details: ', errorThrown);
console.error('Response: ', jqXHR.responseText);
}
});
但是,jQuery/浏览器会报 CORS 错误:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://sd98fsf98.execute-api.us-east-1.amazonaws.com/test/mymodel/123/attr. (Reason: CORS request did not succeed).
显然,我无法通过托管来自 sd98fsf98.execute-api.us-east-1.amazonaws.com 的代码来解决此问题。我在网关 API 设置中找不到任何选项来禁用此检查。如何绕过 CORS 限制?
【问题讨论】:
-
您不想禁用检查(在客户端中),您想在网关 API 配置中启用 CORS 侦听器。见docs.aws.amazon.com/apigateway/latest/developerguide/…
标签: jquery cors amazon-gateway