加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – Angular SPA与API网关中的任何access-control-allo

发布时间:2020-12-17 17:00:14 所属栏目:安全 来源:网络整理
导读:我们目前正在为我们的API使用无服务器部署模型,具有NodeJS快速代码库.一切顺利,直到我们遇到无服务器创建的CloudFormation堆栈的硬限制,其创建的资源限制为200. 尝试在无服务器团队正在进行嵌套堆栈集成的同时解决这个问题,即使用ANY替换单个路由的GET,PUT,P
我们目前正在为我们的API使用无服务器部署模型,具有NodeJS快速代码库.一切顺利,直到我们遇到无服务器创建的CloudFormation堆栈的硬限制,其创建的资源限制为200.

尝试在无服务器团队正在进行嵌套堆栈集成的同时解决这个问题,即使用ANY替换单个路由的GET,PUT,POST,DELETE,这在CloudFormation资源中节省了大约75%.

API Gateway看起来很好,OPTIONS路由的集成响应返回了Access-Control-Allow-Methods:’OPTIONS,ANY’.

使用邮递员进行测试就像一个魅力,能够毫不费力地使用前面提到的所有方法.

从我们的Angular前端执行此操作似乎并不起作用.

XMLHttpRequest cannot load . Method PUT is not allowed by Access-Control-Allow-Methods in preflight response.

在Angular的眼中,……与任何人都不匹配,而对于邮递员而言,它确实如此.

任何可能发生这种情况的输入将不胜感激.

UPDATE

POST请求通过Angular应用程序工作,只有PUT和DELETE请求抛出’Access-Control-Allow-Methods’不允许的错误.

解决方法

The integration response for the OPTIONS route returned Access-Control-Allow-Methods: ‘OPTIONS,ANY’.

如果您通过CloudFormation模板创建OPTIONS资源来启用CORS,那么您应该使’Access-Control-Allow-Methods’标题返回’DELETE,GET,HEAD,OPTIONS,PATCH,PUT’而不是’OPTIONS,ANY ”. (如果从控制台启用CORS,这就是API Gateway控制台的功能).那应该解决它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读