Как узнать, что клиент подключен Eventhub - PullRequest
1 голос
/ 04 июня 2019

Я не знаю, как судить, что клиент подключен. Если EVENTHUB_CONNECTION_STRING совершенно неверно, возникает исключение. Но что, если ключ не тот? Если не выбросишь исключение. Как я могу судить, что клиент успешно подключен.

Мой код указан ниже.

var EventHubClient = require('azure-event-hubs').EventHubClient; 

const connectionString = "EVENTHUB_CONNECTION_STRING";
const entityPath = "EVENTHUB_NAME";
const connStr = process.env[connectionString] || "";
const path = process.env[entityPath] || "";

var client = EventHubClient.createFromConnectionString(connStr, path);

 const eventData = {
            body: {
                test1: aaa,
                test2: bbb
            }
        };
await client.send(eventData);

1 Ответ

0 голосов
/ 04 июня 2019

createFromConnectionString(connStr, path) возвращает обещание, вы должны либо дождаться его, либо зарегистрировать обратный вызов, когда он разрешается с подключением или с ошибкой.Также для отправки данных вам также нужен идентификатор раздела, который можно получить с помощью eventHubClient.getPartitionIds()

var EventHubClient = require('azure-event-hubs').EventHubClient; 

const connectionString = "EVENTHUB_CONNECTION_STRING"; 
const entityPath = "EVENTHUB_NAME"; 
const connStr = process.env[connectionString] || ""; 
const path = process.env[entityPath] || "";

  var client;
  EventHubClient.createFromConnectionString(connStr, path).then((connection) => {
    client = connection;
    ( async function () {
      const pids = client.getPartitionIds();
      const eventData = {
        body: {
          test1: aaa,
          test2: bbb
        }
      };
      pids.forEach((id) => {
        client.send(eventData, id).then((success) => {
          console.log(success);
        }, (error) => {
          console.log(error);

        });

      });
    }())
  }, (connectionError) => {
    console.log(connectionError);
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...