我有一个简单的HTML页面,其中包含一个文本框和一个提交按钮。我有一个Azure函数,当它被命中时,它将接收文本框的内容,我们应该将其发送到Azure函数并发送邮件(代码是用C#的Azure函数编写的)。

我做了什么 :

我采用了文本框值,并通过AJAX调用了功能,但它完全没有命中。它发回400错误代码。

我想要的只是使用Javascript来实现该功能。因为我只有一个简单的HTML页面,而JS是我可以与之交流的唯一手段。

这是功能URL

https://smtpgmail.azurewebsites.net/api/HttpTriggerCSharp1?code=ihrbDCeo2DPdxPXDKiQWyNFYfaMFZhk9rkaYFaHO3LFsNEmrabj9Cw==

它需要一个参数“名称”,我通过像这样粘贴在浏览器中进行了检查

https://smtpgmail.azurewebsites.net/api/HttpTriggerCSharp1?code=ihrbDCeo2DPdxPXDKiQWyNFYfaMFZhk9rkaYFaHO3LFsNEmrabj9Cw==&name=testName

这就是我在Firefox中发现的

azure - 从Javascript调用Azure函数-LMLPHP

如果您需要更多信息,请告诉我

最佳答案

这绝对是与CORS相关的问题。幸运的是,在门户中为Function App配置CORS很容易。只需导航到您的Function App,然后选择Platform Features:

azure - 从Javascript调用Azure函数-LMLPHP

选择API下的CORS选项,这将带您到一个屏幕,您可以在其中添加客户端应用程序的主机名:

azure - 从Javascript调用Azure函数-LMLPHP

10-08 18:16