【问题标题】:CORS settings not being applied to Azure Function?CORS 设置未应用于 Azure 函数?
【发布时间】:2018-02-16 03:39:34
【问题描述】:

在测试我的 Azure 函数的 API 定义时(在门户中),我收到了这个 CORS 错误:

这是一个跨域调用。确保 ***.azurewebsites.net 上的服务器接受来自 functions.azure.com 的 POST 请求。了解更多

我确认这在功能设置中被列为 CORS 允许的来源:

https://functions.azure.com

我错过了什么吗?

【问题讨论】:

    标签: azure cors azure-functions


    【解决方案1】:

    我无法重现这一点。

    我在 ALLOWED ORIGINS 中添加了以下内容:

    Azure 门户中的输出:

    我还通过 jQuery 向浏览器中的函数发出 POST 请求来测试它:

    如果您希望我们深入研究此问题,您可能需要提供详细的重现步骤。

    【讨论】:

    • 不确定这是否相关,但是当我尝试在逻辑应用程序中将我的函数与函数连接器一起使用时,我收到此错误消息:无法获取 swagger 并显示错误消息:无法获取。确保您在端点上启用了 CORS,并且正在调用有效的 HTTPS 端点。
    • 我认为这可能是 API 定义的问题,而不是 CORS。我会报告我的发现,谢谢。
    【解决方案2】:

    问题出在 API 定义上。 CORS 工作正常,尽管这在错误消息中显示为问题。 API 定义中缺少的部分是

    security: []
    

    POST 部分中缺少的内容。我想即使它是空的,也需要安全条目。如果有一个丢失的警告,那就太好了。

    【讨论】:

    • 这到底应该去哪里?
    • 它在函数应用程序的 OpenAPI (Swagger) 定义中。如果您单击生成 api 定义模板,它将自动生成一个包含安全值的模板。由于某种原因,我的丢失了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-12-14
    • 1970-01-01
    • 2021-08-24
    • 1970-01-01
    • 1970-01-01
    • 2017-08-01
    • 2021-04-17
    相关资源
    最近更新 更多