Как я могу замаскировать json, используя json-masker для полей с "-" в нем? - PullRequest
0 голосов
/ 18 октября 2018

Мое требование - маскировать определенные поля JSON во время их регистрации. Я работаю над node.js.Я использовал библиотеку json-masker для node.js.При передаче JSON-пути атрибутов с «-» в имени в параметре «белый список» я получаю лексическую ошибку.

JSON

   {  
   "attribute1":"value1",
   "attribute2":"value2",
   "attribute-name":"value3"
   }

Код

const masker = require('json-masker');
const mask= masker({
whitelist: ['$.attribute1','$.attribute-name']
});

Ошибка

    Error Lexical error on line 1. Unrecognized text.
    $.attribute-name

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

Обратите внимание, что я получаю этот JSON, поэтому я не могу изменить имя ключа

1 Ответ

0 голосов
/ 30 октября 2018

Правильный синтаксис: '$["attribute-name"]' вместо '$.attribute-name'

Поля $ обрабатываются jsonpath , зависимостью json-masker.Эта проблема обсуждается в одной из проблем github ( # 90 ) и представленном там решении.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...