HTTP触发功能,输出结合到队列

问题描述 投票:0回答:1
i在.net5中具有HTTP触发函数,隔离函数。 我很难为此HTTPS函数获得输出绑定。

HTTPS函数检索对象列表。这些对象需要在队列中添加为单独的消息。

[FunctionName("TestQueueOutput")] [return: Queue("myqueue-items", Connection = "AzureWebJobsStorage")] public async Task<HttpResponseData> RunAsync([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestData req, FunctionContext context) { HttpResponseData okResponse = null; okResponse = req.CreateResponse(System.Net.HttpStatusCode.OK); // List of Objects var _list= await _repo.Get(); await okResponse.WriteAsJsonAsync(_list); return okResponse; }

当我运行该功能时,HTTP响应可以看到列表,但在Azure中定义的队列中没有任何内容。

I进一步遵循以下文章,将输出绑定到HTTP触发器上。

https://learn.microsoft.com/en-us/azure/azure-functions/functions-functions-add-output-binding-binding-storage-queue-vs?tabs = tabs =process

当我添加用于隔离过程的多响应类时,列出了排队的输出绑定,该函数为其提供了红色的线条。找不到正确的掘金包来修复它。

我花了无数小时将列表项目添加到队列中。 我在做对吗?任何指导都将不胜感激

update#1

:当我添加MultiResponseOutput binding 类时,我无法弄清楚如何解决以下图像中的问题:

您需要看几件事。首先,您期望返回

QueueOutput
,但也具有
HttpResponseData
绑定设置。而且,正如

return

期望的那样,您正在返回HttpResponseDataQueueOutput Binding in MultiResponse class。但是biging试图将其转化为队列消息。消息信息似乎写给了响应主体,这不是应有的工作方式。 按照您链接的文章,请尝试以下内容:

azure azure-functions azure-function-http azure-function-queue
1个回答
6
投票
上课,称其为

HttpResponse


the the the类似于下面的类
在您的函数中使用
returns
类,如下
这实现多重响应,告诉该功能使用它,并使您在将消息写入队列时返回
MultiRepsonse
。当心:下面的浏览器撰写,未验证的代码。

MulterSponse.cs

MultiResponse
  1. testqueoutput.cs
    MultiResponse
  2. 
    
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.