Запрос шаблона Elasticsearch с json fromat в качестве входного параметра не может быть проанализирован в узле js при попытке вызвать клиент elasticsearch

#node.js #elasticsearch

#node.js #elasticsearch

Вопрос:

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

Фактический ввод:

 {
  "types": [
    {
      "main": "mainType",
      "sub": "subType"
    },
    {
      "main": "mainType1",
      "sub": "subType1"
    }
  ]
}
  

который преобразуется в

 {"types":"[{"main":"mainType","sub":"subType"},{"main":"mainType1","sub":"subType1"}]"}



Node Js Client to ES:
elasticClientReq.write(options.postdata);
  

Комментарии:

1. Пожалуйста, также покажите свой node.js клиентский код

2. @Val, я добавил код узла js. Пожалуйста, проверьте

3. Извините, но это не более понятно… Помогите нам помочь вам!!

4. позвольте мне выразить это так: у нас есть сложный объект json, который необходимо передать на сервер, но внутренние значения объекта json автоматически преобразуются в «{ … }» мне не нужны эти двойные кавычки. надеюсь, это понятно.

5. Эта часть уже была ясна, но, не видя, как вы это делаете в своем коде, я боюсь, что люди не смогут вам помочь. Добавленной вами единственной строки недостаточно.

Ответ №1:

Спасибо всем за поддержку. Как было предложено @Vsevolod Goloviznin выше в комментариях, я проверил свой код и использовал

JSON.parse(inputrequestparam)

проблема решена.