elasticsearch - 如何使用 queryBuilders.wrapperQuery base64 编码字符串
问题描述
我有一个 json 字符串来构建查询,我需要将其转换为 QueryBuilder。(ES 版本 6.3.0)
我发现我可以使用 wrapperQuery 方法,所以我写了这段代码:
String str = cond.getFilter().toString();
QueryBuilder filter = QueryBuilders.boolQuery().must(QueryBuilders.wrapperQuery(str));
这些是调试模式下变量的结果:
这种方法工作正常,作为文档中的描述(https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-wrapper-query.html)
问题是,这个查询不起作用。
出了什么问题,我该怎么办?
任何意见将不胜感激。谢谢。
解决方案
您的 JSON 格式似乎是错误的。由于您的 ASSET_IP 不是数字,因此它必须是 JSON 表示形式的字符串。因此,您需要将其放在您的 JSON 中,如下所示。
{ "ASSET_IP" : "xx.xxx.xxx.xx" }
使用上述内容更新您的 JSON,然后重试。
推荐阅读
- angular - 在 Angular 中选择选项视图滞后
- e-commerce - 谷歌分析电子商务跟踪 Squarespace 网站
- azure-devops - 无法让 Azure 构建解决方案使用特定的 XML 转换文件
- r - rpart 创建一个表,指示观察是否属于某个节点
- vb.net - 如何使用 vb.net 中 CodeProject 中的 FTPclient 重命名 FTP 文件夹
- python - 理解 Python 中的 unicode 和编码
- php - Laravel 在 null 上调用成员函数
- node.js - Nodejs / React Elastic Beanstalk:对代码库的更改未显示在前端
- xpath - 使用 XPATH previous:: 更像是一个数组
- c# - 如何修复在使用同一服务器的两个单独系统中使用时出现问题的 winform 应用程序