2014-12-04 70 views
1

时,通过Sense chrome扩展请求elasticsearch断点尝试使用Sense将文档添加到elasticsearch索引。如:当ID包含@

POST productmarket/ppt/[email protected]_Index_withNewGuid_233df4 
{ 
"hash" : "cake" 
} 

和我回来”

Request failed to get to the server (status code: 0): 

现在,如果我改变@到别的正常工作

现在我们已经在有索引项@”如果我在前端APP中更新它们,我们也使用API​​来发布它的中断,例如:

enter image description here

但是,当我使用我们的C#应用​​程序来索引一个JSON文档,它的id在使用NEST时有效。当我尝试在前端应用程序中再次更新此文档时(它刚刚打开),它也可以正常工作。

现在我已经尝试了索引普通文档和复杂文档。没有什么变化。我尝试了不同的索引。仍然是同样的问题。

任何想法是什么错?

+0

只需检查我编写的客户端的源代码可能存在问题? – 2014-12-04 09:50:07

+0

是的。但是,如果使用NEST对文档进行索引,客户端可以正常工作。但是,如果我试图用客户端的名字@来更新旧文档,那么它不起作用。它不仅仅是客户端,而且在Sense中,它不希望在ID中有@时发布,并返回'请求未能到达服务器(状态码:0):' – 2014-12-04 09:52:22

+0

适用于我用ES 1.3.4,Marvel 1.2.1 – 2014-12-04 09:58:00

回答

2

想通了。很愚蠢。

嵌套网址对请求进行编码。 感觉不。使用@的URL编码值可以正常工作。