【问题标题】:set-cookie header Is removed by AWS HTTP API Gatewayset-cookie 标头被 AWS HTTP API Gateway 删除
【发布时间】:2022-10-06 07:21:51
【问题描述】:

我使用 Amazon Web Services S3、Lambda 和 HTTP API 网关而不是 REST API 网关编写了一个无服务器网站。我正在尝试使用我的一个 lambda 函数设置一个 cookie,当我使用 lambda 函数 url 直接点击 lambda 函数时它可以工作,但是当我使用 HTTP API 网关点击 url 时,Set-Cookie 标头被剥离。正文和所有其他自定义标头都存在,但 set-cookie 标头刚刚消失。

我尝试过在标题中使用和不使用domain=***.com,但这并没有什么不同。

我试过弄乱CORS并启用Access-Control-Allow-Credentials。我已将Access-Control-Allow-Origin 设置为正确的域名。对于Access-Control-Allow-HeadersAccess-Control-Expose-Headers,我已经尝试过set-cookie*。虽然我不认为 CORS 真的很重要,因为我使用的是 Postman,而且我的理解是它不需要 CORS。

HTTP API 网关是否不支持设置 cookie?如果将其记录在某处,那就太好了。

    标签: amazon-web-services aws-lambda aws-api-gateway


    【解决方案1】:

    我忘记了我使用的是 CloudFront。默认情况下,CloudFront 不会将 cookie 转发到源或从源转发,因此我必须设置 CloudFront 缓存策略以允许这样做。更多信息在这里:https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Cookies.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-12
      • 2021-09-15
      • 1970-01-01
      • 1970-01-01
      • 2016-05-03
      • 2013-02-08
      • 2016-07-19
      相关资源
      最近更新 更多