Объясните о параметре ActiveMQ, необходимом в коде JavaScript, с примером - PullRequest
0 голосов
/ 26 сентября 2019

Пожалуйста, объясните мне необходимые параметры ActiveMQ (uri, myDestination, myId) в коде JavaScript.

<script type="text/javascript">
  var amq = org.activemq.Amq;
  amq.init({ 
    uri: 'amq', 
    logging: true,
    timeout: 20
  });
</script>
amq.sendMessage(myDestination,myMessage);
var myHandler =
{
  rcvMessage: function(message)
  {
    alert("received "+message);
  }
};

amq.addListener(myId, myDestination, myHandler.rcvMessage);

Я написал код JMS и создал свой API http://localhost:8080/nbt-messenger/chat-service/RecieveMessage?queueId=Case_4&sentTo=Mark Всякий раз, когдаЯ нажал на этот API, я получаю ответ, но моя проблема в том, как снова опрашивать этот API и снова не даст мне гладкого опыта, так как он может повесить браузер, поэтому я хотел использовать выше слушатель javascript, но я незнать, что означают эти параметры ...

1 Ответ

0 голосов
/ 26 сентября 2019

Как указано в документации :

... myId - строковый идентификатор, который можно использовать для более позднего вызова amq.removeHandler (myId), а myDestination -URL-адрес строки адреса получателя (например, topic: //MY.NAME или channel: //MY.NAME).При получении сообщения обратный вызов функции myHandler.rcvMessage передает сообщение в ваш код обработки.

Другими словами:

  • myId : строковый идентификатор, который можно использовать для последующего вызова amq.removeHandler(myId)
  • myDestination : строковый адрес URL получателя (например, topic://MY.NAME или channel://MY.NAME)
  • myHandler.rcvMessage : функция обратного вызова, которая будет использоваться для передачи сообщения вашему коду обработки

Для чего бы это ни стоило, я бы рекомендовал не использоватьинтерфейс ActiveMQ REST, поскольку он специфичен для ActiveMQ и поэтому не будет работать с любым другим брокером.Вместо этого я рекомендую вам использовать стандартный протокол, такой как STOMP или AMQP, в котором доступны клиенты Javascript и улучшена поддержка / документация.

...