Javascript Api网关无法允许访问控制允许源

Javascript Api网关无法允许访问控制允许源,javascript,amazon-web-services,cors,aws-api-gateway,Javascript,Amazon Web Services,Cors,Aws Api Gateway,此url位于AWSAPI网关中,方法为get,并且stage部署良好。 然后我启用了CORS 下面是我启用CORS的步骤 -资源->操作->启用CORS-> 默认设置->启用CORS并替换CORS标题。 CORS结果中没有错误日志 我不是专业的web开发人员,我的浏览器是safari。 这是我要查询的代码“” 控制台将打印错误: XMLHttpRequest无法加载“”访问控制不允许源 如果javascript请求或API网关部署中存在一些错误?跨源问题来自服务器端,而不是javascript端

此url位于AWSAPI网关中,方法为get,并且stage部署良好。 然后我启用了CORS

下面是我启用CORS的步骤

-资源->操作->启用CORS-> 默认设置->启用CORS并替换CORS标题。 CORS结果中没有错误日志

我不是专业的web开发人员,我的浏览器是safari。
这是我要查询的代码“”

控制台将打印错误: XMLHttpRequest无法加载“”访问控制不允许源


如果javascript请求或API网关部署中存在一些错误?

跨源问题来自服务器端,而不是javascript端。当服务器不允许来自其他域的请求时,它会抛出跨源错误。但你说你已经在aws实例中添加了CORS

由于javascript仅从my.com访问服务,您需要在my.com站点中添加适当的域映射,以告知请求将来自另一个名为example.com的域。可能是服务器配置不正确。或者,如果服务器需要任何标头,请重试

尝试在任何rest客户端(如soapui、chrome中的rect客户端插件等)中查看结果。一旦确认服务器中没有问题,请从javascript中尝试

要测试chrome插件,您可以尝试


在咨询并尝试了每种方法后,我发现错误如下

根据AWS文档,我们不能在启用CORS之前部署api。在部署之前,必须设置有关标头和CORS的所有设置。
但API网关不会阻止此设置,也不会显示任何错误对话框。即使您的设置过程显示成功,API Gateway也不会更改标题。

您在AWS中设置CORS的方式肯定有问题,因为我在本地服务器上将example.com设置为vhost。完成后,我得到:
XMLHttpRequest无法加载http://my.com/. 重定向自'http://my.com/“到”https://my.com/'已被CORS策略阻止:请求的资源上不存在'Access Control Allow Origin'标头。起源'http://example.com因此不允许访问。
非常感谢,我认为您的评论有助于我找到解决问题的方法。我很高兴。祝你好运遇到了同样的问题。用这个来解决它-听起来像AWS的一个bug。
 function request(idex) {
 var xmlHttp = new XMLHttpRequest();
 xmlHttp.onreadystatechange = function() { 
    if (xmlHttp.status == 200)
        callback(xmlHttp.responseText);
 }
 xmlHttp.open("GET", "http://my.com", true);  
 xmlHttp.send(null);}