Azure Function App Proxy 到 blob 存储帐户

Azure Function App Proxy to a blob storage account

试验新功能 proxy feature,我收到一个 http 500 错误,代理配置如下:

路线模板: /内容/{*文件名}

后端URL:https://my-storage-account.blob.core.windows.net/public/{*文件名}

后端只是 blob 存储帐户上的一个 public 容器。

我试过带和不带文件扩展名的文件: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/ 前缀 - 这对我的所有功能都适用。请求上面的 url 添加 /api/ 会为 both url 产生 404。

以防其他人犯同样的错误:问题出在后端的星号 url:它应该只是 {filename},而不是 {*filename}

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

带有扩展名的文件无法工作:favicon.ico 仍然是 returns 404,但只要去掉扩展名,我就可以工作了。

现已修复。 App Service Team 提供了修复并且工作正常。只需确保您使用的是最新版本的代理运行时 (~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