1

尝试使用新功能代理功能,我得到一个 http 500 错误,代理配置如下:

路由模板:/content/{*filename}

后端网址:https ://my-storage-account.blob.core.windows.net/public/ {*filename}

后端只是 blob 存储帐户上的公共容器。

我已经尝试过带有和不带有文件扩展名的文件:favicon.ico 和一个名为 test 的(文本)文件。

请求https://my-function-app.azurewebsites.net/content/favicon.ico会产生 404。

请求https://my-function-app.azurewebsites.net/content/test(没有名为“test”的扩展名的文件)会产生 http 500 错误。

我究竟做错了什么?

注意:我通过使用 host.json 中的 routePrefix 选项删除了 /api/ 前缀——这对我的所有函数都适用。请求上面添加 /api/ 的 url 会为两个url 生成 404。

4

2 回答 2

2

万一其他人犯了同样的错误:问题是后端 url 中的星号:它应该只是 {filename},而不是 {*filename}

这可能是可以在输入验证中检查的内容。

带有扩展名的文件不起作用:favicon.ico 仍然返回 404,但只要去掉扩展名,我就可以正常工作了。

于 2017-02-24T11:18:51.480 回答
2

现在已经修好了。应用服务团队提供了一个修复程序,并且工作正常。只需确保您使用的是最新版本的代理运行时(~0.1),并将 ROUTING_EXTENSION_VERSION 从 0.0.5 升级到最新版本(当前为 0.0.6)

更多信息:https ://www.linkedin.com/pulse/reverse-proxy-using-azure-functions-proxies-thiago-cust%C3%B3dio?published=t

于 2017-03-01T23:00:41.530 回答