调用Azure createServiceBusService时指定帐户信息

时间:2018-06-01 10:54:28

标签: node.js azure azureservicebus azure-servicebus-queues

背景

我正在创建一个使用Azure的Service Bus的基本Node.js应用程序,但我找不到将配置正确发送到方法的方法,因为我找不到Node.js的任何文档。

研究

我已阅读本教程:

https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-nodejs-how-to-use-queues#create-a-queue

在该教程中,他们有以下引用:

  

Azure模块读取环境变量   AZURE_SERVICEBUS_CONNECTION_STRING获取所需的信息   连接到服务总线。 如果未设置此环境变量,则为您   必须在通话时指定帐户信息   createServiceBusService

我无法为此设置ENV变量(由于各种原因),但我可以在调用时将我的帐户信息发送给该方法。

问题?没有任何信息可以指定如何使用Node.js完成。

我还搜索了我能找到的所有文档,但它通常是在C#或Java中。

代码

以下是说明问题的示例代码:

const azure = require( "azure" );
// Pass account information object to this method
const serviceBusService = azure.createServiceBusService( );

问题

  1. 方法createServiceBusService预期的输入格式是什么?
  2. 是否有任何描述Node.js的Azure Service Bus API的文档?

1 个答案:

答案 0 :(得分:1)

您可以将连接字符串传递给方法:

const serviceBusService = azure.createServiceBusService('Endpoint=sb://<service bus account name>.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=<your shared access key>');

不幸的是,文档对于Service Bus来说非常糟糕,但好的是SDK在Github上是开源的:https://github.com/Azure/azure-sdk-for-node/tree/master/lib/services/serviceBus。您可以使用源代码代替文档。

事实上,我从那里找到了这个解决方案(https://github.com/Azure/azure-sdk-for-node/blob/master/lib/services/serviceBus/lib/servicebusservice.js#L61)。