Elasticsearch:路由中的字符?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch:路由中的字符?相关的知识,希望对你有一定的参考价值。
我有想要在elasticsearch中设置路由的密钥。我有一些具有特殊字符的键(例如:&,“) - 我如何为这些键设置路由。示例:
"A&B"
答案
您只需要URL-encode路由参数值,因为&
是引入新参数的URL中的保留字符。在你的情况下,routing
参数的值为"A
,然后引入另一个名为B"
的参数,ES不知道,因此它会抱怨。
/partb-2017-06-*/_search?routing="A&B"
^
|
this introduces a new parameter
正确的方法是将"A&B"
URL编码为%22A%26B%22
,ES不会再抱怨了。
/partb-2017-06-*/_search?routing=%22A%26B%22
以上是关于Elasticsearch:路由中的字符?的主要内容,如果未能解决你的问题,请参考以下文章
elasticsearch代码片段,及工具类SearchEsUtil.java
ElasticSearch学习问题记录——Invalid shift value in prefixCoded bytes (is encoded value really an INT?)(代码片段