Расшифровка двоичных данных Sitecore IP, поступающих с mongoDB - PullRequest
0 голосов
/ 30 апреля 2018

У нас есть приложение, в котором данные аналитики sitecore регистрируются в mongoDB.

Я написал Java-процесс для извлечения этих аналитических данных из коллекций Монго. У некоторой коллекции есть значение IP-адреса, которое выглядит следующим образом:

Ip ": {" $ двоичным ":" rBBvbQ ==», "$ типа": "00"}

Я хочу, чтобы исходные значения IP возвращались на основе значения типа $. Пожалуйста, предложите, как я могу получить это.

1 Ответ

0 голосов
/ 07 мая 2018

MongoDB работает на языке Javascript. Вы можете загрузить свой скрипт со следующим синтаксисом:

load("scripts/ip-address-globals.js")

Этот файл скрипта может содержать следующий код:

Address4.fromHex = function (hex) {
  var padded = padStart(hex.replace(/:/g, ''), 8, '0');
  var groups = [];
  var i;

  for (i = 0; i < 8; i += 2) {
    var h = padded.slice(i, i + 2);

    groups.push(parseInt(h, 16));
  }

  return new Address4(groups.join('.'));
};

Вы можете вызвать эту функцию, чтобы получить адрес в обычном формате.

P.S. эта функция была взята из библиотеки ip-address на GitHub. Стоит взглянуть на него и, вероятно, использовать полную библиотеку, а не получать только те функции, которые вам нужны.

...