隔离模式下的 Azure Functions - 如何创建 HTTP 触发器

Azure Functions in Isolated Mode - How to create a HTTP Trigger

我正在尝试将 Azure 独立函数设置为 HTTP 触发器:

[Function("Function1")]
public static async Task<IActionResult> Run(
    [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] 
    HttpRequest req,
    ILogger log)

但是:HttpTrigger 在此命名空间中:

using Microsoft.Azure.WebJobs;

但是当我添加它时,它告诉我我不能/不应该将它与一个孤立的函数一起使用:

The attribute 'HttpTriggerAttribute' is a WebJobs attribute and not supported in the .NET Worker (Isolated Process).

.Net Isolated 是否有替代流程?

根据评论和答案,我尝试更改此设置,并确定 HttpTrigger 是真正的罪魁祸首。我的依赖如下:

  <PackageReference Include="Microsoft.Azure.Functions.Worker.Extensions.Abstractions" Version="1.1.0" />    
  <PackageReference Include="Microsoft.Azure.Functions.Worker.Sdk" Version="1.3.0" />
  <PackageReference Include="Microsoft.Azure.Functions.Worker" Version="1.6.0" />
  <PackageReference Include="Microsoft.Azure.WebJobs" Version="3.0.31" />
  <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.Http" Version="3.0.12" />

使用语句:

using System.Threading.Tasks;
using Microsoft.Azure.Functions.Worker.Http;
using Microsoft.Azure.Functions.Worker;
using Microsoft.Azure.WebJobs;

我仍然遇到同样的错误。

Microsoft.Azure.WebJobs 也支持 Azure Functions 隔离进程。

首先,您需要从 Visual Studio 项目中的 NuGet 包管理器安装上述包。

其次,我们需要在Http Trigger Function Class中写入类似using Microsoft.Azure.WebJobs;的namespace header,并且在启动时是灰色的。在您编写与该名称空间相关的代码之前,它一直处于启用状态,如下所示:

更新答案:

请检查函数 class 中的函数声明,因为它应该是 HttpRequestData 但你有 HttpRequest.