我不清楚scopeId
参数的SingletonAttribute
工作原理。具体来说,scopeId
当您将其绑定到路由参数时,该参数是否适用于 HTTP Trigger Azure Functions?绑定是如何工作的?我可以绑定哪些变量/值?
例如:
[Singleton("{input}", Mode = SingletonMode.Listener)]
public async Task<IActionResult> Run([HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "v1/{input:length(1,30)}")] Microsoft.AspNetCore.Http.HttpRequest req, string input, ILogger log) {
return new OkObjectResult(input + " world");
}
使用 URI 'v1/hello' 对该函数的 HTTP POST 请求将返回:“Hello world”。
但是,Singleton 属性是否会起作用,使得对“v1/hello”的所有请求都将串行运行,而两个同时请求,一个对“v1/first”,另一个对“v1/second”将并行运行?
我从这个答案中看到,对于服务总线触发器,您可以直接绑定到Message 对象中的属性。
此外,在文档中还有一个 Queue Trigger Function 示例,其中 scopeId 绑定到 WorkItem 对象中的属性。
目前还不清楚 HTTP 触发器函数支持什么。