2017-04-17 87 views
0

我需要通過HTTP請求調用Solr JSON請求API,而不是使用Curl命令。通過HTTP請求調用Solr JSON請求API

例如樣品curl命令,這將給Solr的結果:

curl http://localhost:port/solr/collection/select -d 'json={query:"id:1"}&wt=json' 

我知道相當於Solr的HTTP查詢 http://localhost:port/solr/collection/select?q=id:1

但我原來的Solr的JSON請求API有多個參數,並想知道如果我可以直接調用它使用HTTP(不需要轉換上面的查詢)。

類似:http://localhost:port/solr/collection/select?json={query:"id:1"}

我怎樣才能做到這一點?可能嗎?

+0

你的意思是直接把HTTP URL到瀏覽器?或尋找一個客戶端,可以採取完整的JSON作爲參數? –

+0

如果您不能使用已存在的客戶端(如SolrJ)或在Solr普通URL中翻譯所有的JSON請求,您只需將您的curl HTTP帖子移動到用您必須使用的編程語言完成的等價請求中即可。 – freedev

+0

@SabirKhan我開放的選項(想知道所有可能的方式)。但我不確定在瀏覽器中是否有作爲直接HTTP網址的選項。請糾正我,如果我錯了 – Riya

回答

0

curl -d(或--data)僅向Solr發送POST請求。如果你想要做同樣在Java剛:

  • 使用您喜歡的HTTP庫(如Apache Http Client或任何其他),並通過使用它的API將其設置爲POST類型請求,並添加所需的數據。
  • 或者你可以只使用普通的Java,它只是更冗長,here就是一個例子
+0

它的工作。謝謝 – Riya