簡體   English   中英

在代碼中使用 c# serverless 中的 SignalR 服務

[英]Consuming SignalR services in c# serverless inside the code

艾維這個代碼...

public async Task<IActionResult> Run(
   [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "v1/Sala")] 
HttpRequest req, [SignalR(HubName = "{query.HubName}")] 
IAsyncCollector<SignalRMessage> signalRMessages) {
     
     await signalRMessages.AddAsync(
           new SignalRMessage {
               Target = "newMessage",
               Arguments = new[] { "Hello" }
           });
}

這段代碼運行良好,我很高興。 但我有一個需要,特別是在我的 EventGridTrigger 上......正如您在上面的代碼中注意到的那樣,中心名稱是動態的,而 EventGridTrigger 是一種特殊類型的端點(您的客戶端應用程序不會調用和使用它。 ..SignalR 將改為)。 但我能夠識別我的 EventGridTrigger 上的中心名稱......我可以這樣做:

SignalRDataEvent data = 
JsonConvert.DeserializeObject<SignalRDataEvent(eventGridEvent.Data.ToString());

string hubname = data.hubname;

但是現在...我需要使用我的變量 hubname 發送一個 signalR 消息。 由於我無法將 [SignalR(HubName = "{query.HubName}")] IAsyncCollector signalRMessages) 放在 EventGridTrigger 上,因此我需要創建對象 SignalR,可能會傳遞憑據、集線器名稱等,然后發送消息。 我找不到任何示例 - 至少沒有可以在無服務器 c# azure 函數中工作的示例。 有人可以幫我嗎?

嘗試以下操作:

[SignalR(HubName = "{data.hubName}")]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM