【问题标题】:Not able to access lambda function when invoked with headers使用标头调用时无法访问 lambda 函数
【发布时间】:2022-11-12 02:50:43
【问题描述】:

我正在使用无服务器来创建和部署我的 lambda 函数。我正在使用来自无服务器的Node.js - HTTP API 模板。我创建了几个 lambda 函数并使用命令 sls deploy 部署它们。 函数部署成功,我可以使用邮递员查询 lambda 函数响应。

但是,当我想通过我的 React webapp(使用 axios)调用相同的 lambda 函数时,如果我包含任何标题,它会向我抛出 CORS Error

例如。我想在标题中发送Authorization 令牌或在标题中发送Content-type 作为json。这些都不起作用。

在此之后,我在我的 lambda 函数响应中添加了以下标题

      "Access-Control-Allow-Origin": "*", 
      "Access-Control-Allow-Credentials": true,

在此之后,在 AWS API Gateway 控制台中,我使用通配符来源配置了 CORS,并允许所有 HTTP 方法。部署此设置后它仍然无法正常工作。

我也尝试过调整我的serverless.yml 文件,但我的错误是它也没有用

【问题讨论】:

  • CORS 错误附带什么错误消息?
  • 没有任何特定错误,但它会在网络选项卡中抛出 CORS error。在获取代码中它会抛出typerror
  • CORS error 应该有更多的细节。
  • 不。没有明确规定

标签: node.js amazon-web-services aws-lambda aws-api-gateway serverless-framework


【解决方案1】:

在里面AWS API 网关控制台,在CORS 选项卡下,您必须允许Access-Control-Allow-Headers 下的相关标题

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-11
    • 2021-04-04
    • 2018-06-13
    • 2021-10-29
    • 1970-01-01
    • 2020-09-30
    • 2020-11-27
    • 2017-03-09
    相关资源
    最近更新 更多