CORS策略阻止了从源''获取''处的访问:请求的资源上不存在访问-控制-允许-源'标头(No'Access-Control-Allow-Origin'Header) [英] Access to fetch at '' from origin '' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource

查看:26
本文介绍了CORS策略阻止了从源''获取''处的访问:请求的资源上不存在访问-控制-允许-源'标头(No'Access-Control-Allow-Origin'Header)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这个API(方法get),它连接到一个lambda函数,该函数从数据库中执行简单的选择,如果我使用NULL主体的Postman测试端点,它确实可以工作(如果我理解,Postman不在相同的CORS策略下),并在浏览器上键入端点。

但是,当我尝试从简单的js进行提取时,我得到错误: 在‘.’处获取的访问权限来自源的http://localhost‘已被CORS策略阻止:请求的资源上不存在"Access-Control-Allow-Origin"标头。如果不透明的响应满足您的需要,请将请求的模式设置为""no-CORS""以在禁用CORS的情况下获取资源。

我在API Gateway中启用了CORS,两者都使用了Enable CORS选项 并在创建新资源时启用API Gateway CORS

如果我使用网关测试我端点,我还会在响应标头中得到Allow-Content-Allow-Origin:*:

我应该如何解决此问题?

这里是JS FETCH:

    console.log("pre fetch");

Show();
console.log("post fetch");
function Show(){
fetch("...").then(onResponse);//.then(onJson);
}
function onResponse(response){
    console.log(response);
    return response.json();
}

我删除了onJson以避免使用念力,但即使与其处于相同的问题中。

推荐答案

多亏了Reddit用户u/LipSoft,接口开启CORS部分的头部添加了";Origin";已解决。 Screen

现在问题已解决。

这篇关于CORS策略阻止了从源''获取''处的访问:请求的资源上不存在访问-控制-允许-源'标头(No'Access-Control-Allow-Origin'Header)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆