【问题标题】:Specifying account info when calling Azure createServiceBusService调用 Azure createServiceBusService 时指定帐户信息
【发布时间】:2018-06-01 20:02:31
【问题描述】:

背景

我正在创建一个使用 Azure 服务总线的基本 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 获取所需的信息 连接到服务总线。 如果没有设置这个环境变量,你 调用时必须指定账户信息 创建ServiceBusService

我无法为此设置 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 服务总线 API?

【问题讨论】:

  • 请尝试类似:const serviceBusService = azure.createServiceBusService('Endpoint=sb://<service bus account name>.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=<your shared access key>');
  • 耶稣 .. 成功了!我期待该方法接收某种 JSON 对象或任何else。你怎么知道它只是字符串?你在哪里找到这些信息的?如果你把它写下来,我会接受它作为答案!

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


【解决方案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)。

【讨论】:

  • 使用源代码而不是文档在很多方面都是错误的......但你做得很好。感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-30
  • 1970-01-01
相关资源
最近更新 更多