gpt4 book ai didi

node.js - 无法使用 Lambda 和 API 网关访问 API

转载 作者:行者123 更新时间:2023-12-05 08:31:31 27 4
gpt4 key购买 nike

我有一个返回以下响应的 aws lambda 函数:

var responseBody = { cost: price };
var response = {
statusCode: 200,
headers: {
"Access-Control-Allow-Origin": "*"
},
body: JSON.stringify(responseBody),
isBase64Encoded: false
};

callback(null, response);

但我的前端 Angular 应用程序出现以下错误。

Access to XMLHttpRequest at 'https://xxxxxxxxx.execute-api.us-east-1.amazonaws.com/dev/price' from origin 'http://127.0.0.1:8080' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.

最佳答案

如果您使用的是 API Gateway HTTP API(不确定这是否与 REST API 相关):

假设我在 /POST products 有一个端点。我必须在 /OPTIONS products 添加另一个端点,并将其与一个简单的 Lambda 函数集成,该函数只返回 HTTP 200 OK(或 HTTP 204 No Content),以及 "Access-Control-Allow-Origin": "*" header (或者更好,指定您的来源/客户端的 URL)。

这是因为浏览器在发出实际请求(参见 more )之前向同一端点发出预检 /OPTIONS 请求,对于除 GET 之外的所有 HTTP 请求和 POST 使用某些 MIME 类型 ( source )。

关于node.js - 无法使用 Lambda 和 API 网关访问 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57350270/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com