Lambda URL + .NET Core API,如何去除重复的CORS(跨源资源共享)'Access-Control-Allow-Origin'?

0

【以下的问题经过翻译处理】 从Chrome控制台可以看到。由于CORS策略的原因,已经阻止从来源 'https://localhost:5002' 访问 'https://lambdaurl' 的获取请求:'Access-Control-Allow-Origin' 标头包含多个值 '*, *',但只允许一个值。请确保服务器发送带有有效值的头,或者如果不需要CORS响应,则将请求的模式设置为'no-cors'以禁用CORS获取资源。

看起来核心Web API和Lambda都添加了 'Access-Control-Allow-Origin': *' 标头,而Chrome不满足。是否有办法配置Lambda URL,以避免重复发送该标头?

profile picture
专家
已提问 6 个月前55 查看次数
1 回答
0

【以下的回答经过翻译处理】 如果您在.NET代码中处理CORS,您可以禁用Lambda函数的自动CORS处理。这个选项可以通过AWS管理控制台或AWS CLI来禁用。如果您使用基础设施即代码(IaC)(例如CloudFormation或SAM)部署您的函数,请不要在那里设置相应的配置,也就是说,不要指定Cors或FunctionUrlConfig对象。

请注意,自动CORS处理默认是禁用的。

请注意,默认情况下自动CORS处理被禁用。

您还可以阅读此博客文章,该文章解释了如何配置Lambda URL。

或者,您可以利用Lambda函数功能来自动处理CORS。然后,您应该从您的.NET Web API初始化代码("AddCors()"和"UseCors()"方法)中删除CORS配置。

profile picture
专家
已回答 6 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则