node.js - 尝试调用Elasticsearch客户端时,以json fromat作为输入参数的Elasticsearch模板查询无法在 Node js中解析

标签 node.js elasticsearch

我们创建了一个精巧的搜索模板,接受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);

最佳答案

谢谢大家的支持。
正如@Vsevolod Goloviznin在上面的评论中所建议的,我已经验证了我的代码,并且我使用了

JSON.parse(inputrequestparam)



问题得到解决。

关于node.js - 尝试调用Elasticsearch客户端时,以json fromat作为输入参数的Elasticsearch模板查询无法在 Node js中解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39895053/

相关文章:

node.js - p5.j​​s 和 node.js 为小 Blob 同步 x 和 y 的位置

javascript - 使用 node.js + Q deferred/promises 模块从同步回调创建同步循环

mysql - 在 Node JS 中安排多个函数以特定时间间隔运行(CRON JOB)

ElasticSearch 分页和排序

elasticsearch - 在Elasticsearch中无法正确搜索电子邮件

java - Spring Elasticsearch HashMap[String, String] 映射值不能not_analyzed

javascript - 给定一个日期和一个 cron 表达式,您可以验证该日期是否是 cron 表达式的一部分

javascript - Array.prototype.values() 未定义 - 在 NodeJS 环境中使用 Babel 转译 ES6

elasticsearch - 自定义坚果索引编写器以将值映射到弹性docin multielvel(例如JSON)

java - AWS ElasticSearch Service 版本 2.3 不适用于 Jest Client : java.net.SocketTimeoutException