2014-12-04 64 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編碼值可以正常工作。