2

使用服务总线触发器创建 Azure 函数并部署在 azure 门户中。使用 servicebusexplorer,将队列发送到门户并正常工作。但是在 azure 中停止该功能后,将消息从资源管理器发送到 Visual Studio 中的本地代码进行调试。但它不火。
我在 local.settings.json 中给出了服务连接字符串,并且队列名称是正确的。从 Visual Studio 运行该功能后,它会在 azure CLI 中引发错误。

错误:

MessageReceiver 错误(Action=Receive,ClientId=MessageReq.queue,Endpoint=sss-bbbb.servicebus.windows.net)xxxxx.queue,EntityPath=sss.ccccc
Microsoft.Azure.ServiceBus:连接尝试失败,因为连接方没有一段时间后正确响应,或由于连接的主机未能响应而建立连接失败 ErrorCode: TimedOut。System.Private.CoreLib:连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应。

local.settings.json

   {    
        "IsEncrypted": false,    
      "Values":     
     {     
          "AzureWebJobsStorage": "UseDevelopmentStorage=true",     
          "AzureWebJobsDashboard": "UseDevelopmentStorage=true",    
          "FUNCTIONS_WORKER_RUNTIME": "dotnet",     
          "ServiceBusConnectionString": "Endpoint=//",    
          "RequestTimeout": "600000"    
      }      
4

2 回答 2

6

我的公司防火墙阻止了服务总线流量时遇到了类似的问题。我附加TransportType=AmqpWebSockets到我的连接字符串的末尾并且它起作用了。

于 2019-11-26T10:40:35.993 回答
0

当本地防火墙策略阻止函数正在使用的 AMQP 连接时,我曾经见过这种情况。如果是这种情况,使用服务总线 .NET Core SDK 的控制台应用程序也可能会失败。那就是说你可以尝试不同的网络吗?错误读取它是网络解析问题。

于 2019-09-14T20:55:49.480 回答