直接发送http请求到ES,如何处理字符串参数

直接发送http请求到ES,如何处理字符串参数,第1张

直接发送http请求到ES,如何处理字符串参数 背景

在工作中直接使用向ES发送http请求的方式来获取结果,一般请求体中所用的参数来自于用户输入,那么里面可能包含英文双引号、反斜杠特殊字符,所以我们对这种特殊情况进行处理

http请求体如下所示,目前的情况是关键词 中国 中可能含有上面的特殊字符,所以我们在发送http请求之前,需要先进行处理

{
	"query": {
		"term": {
			"normalTitle": "中国"
		}
	},
	"_source": ["title", "website", "normalTitle", "titleMeaning"]
}
解决办法

将英文双引号、反斜杠转义即可,方法如下:

public static String dealSpecialCharacter(String str) {
    if (StringUtils.isBlank(str)) {
        return str;
    }
    str = str.replace("\", "\");
    str = str.replace(""", "\"");
    return str;
}

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5711205.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存