【发布时间】:2019-06-10 13:41:31
【问题描述】:
我正在开发一个 Azure Function App (v2),它在同一个 Function App 中具有许多不同的功能。
它将部署在多个 Azure 区域,我想添加一个自定义标头,指示哪个区域为请求提供服务。
我知道我可以让每个函数返回HttpResponseMessage,它可以包含自定义标头。我不想将代码复制到每个函数,而是将其集中在整个 Function App 项目中。返回HttpResponseMessage的另一个缺点是我想使用IActionResult,所以我可以使用JsonResult或OkObjectResult和类似的返回类型。
使用 ASP.NET MVC 项目,我可以添加一个中间件来添加标头或使用 web.config 添加标头。在函数应用程序中似乎都不可能。
如何在不必返回HttpResponseMessage 并在每个函数的Run 方法中添加标头的情况下做到这一点?
【问题讨论】:
-
看看功能过滤器,它应该符合您的要求:github.com/Azure/azure-webjobs-sdk/wiki/Function-Filters。
-
感谢您的指点。功能过滤器接近我想要的。至少它们被注入到函数的执行流程中。但似乎该功能尚未完成(github.com/Azure/azure-webjobs-sdk/issues/1284)并且他们无法修改函数的响应(github.com/Azure/azure-webjobs-sdk/issues/1314)
标签: azure azure-functions