Существует ли способ получить IP-адрес источника из сообщения JMS?

Используйте функции expected и actual. Таким образом, в common вы создаете что-то вроде expect fun isDebugEnabled(): Bool, затем в iOS вы реализуете это с помощью специального API для iOS, аналогично для Android.

https://kotlinlang.org/docs/reference/platform-specific-declarations.html

6
задан Uri 7 November 2008 в 18:44
поделиться

7 ответов

Существует дополнительный заголовок JMS, упомянутый в спецификации JMS под названием JMSXUserID который, который идентифицирует пользователя, отправляющего сообщение (то, которое брокер проверяет и гарантирует, корректно, чтобы не имитировать), который поддерживают некоторые поставщики JMS.

Например, вот то, как включить его в Apache ActiveMQ

3
ответ дан 17 December 2019 в 18:20
поделиться

Я не верю так. По крайней мере, я не смог найти путь.

Если необходимо передать ответ обратно источнику сообщения, у Вас может быть отправитель, устанавливает свойство "JMSReplyTo" и отвечают тому месту назначения.

Или, Вы могли изменить свою схему обмена сообщениями немного и встроить само исходное информационное сообщение. Отправитель идентифицировал бы себя в сообщении, и получение могло считать его оттуда.

1
ответ дан 17 December 2019 в 18:20
поделиться

Если Вы управляете конструкцией отправляемых сообщений, можно всегда добавлять IP-адрес к сообщению как свойство. Затем Вы могли проверить на значение с getStringProperty методом на сообщении.

0
ответ дан 17 December 2019 в 18:20
поделиться

Используя glassfish при рассмотрении getJMSMessageID () сообщения необходимо видеть строку к эффекту "ID:40-192.168.0.242 (f5:62:c6:58:22:6f)-52506-122885191641". Появляется, как будто IP является подстрокой идентификатора сообщения.

Обратите внимание на то, что это - то, что я вижу при нашей установке, таким образом, могут быть другие факторы в действии (т.е. пружина), но я знаю, что строка не была создана нами программно.

0
ответ дан 17 December 2019 в 18:20
поделиться

Зависит от Вашего Сервера JMS. Некоторые серверы имеют инструменты/API Admin, которые позволяют Вам смотреть детали соединения.

0
ответ дан 17 December 2019 в 18:20
поделиться

При управлении кодом клиентов, отправляющих сообщения Вы могли бы изобрести некоторое имя свойства, сказать "IPOfSender" и включать то свойство в каждое сообщение с Message.setStringProperty ().

// client code
String myIPString = ...;
Message m = session.createTextMessage();
m.setStringProperty("IPOfSender", myIPString);
...
0
ответ дан 17 December 2019 в 18:20
поделиться

Короткий ответ: НЕТ

-1
ответ дан 17 December 2019 в 18:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: