我正在使用SOLR PHP客戶端從solr服務查詢數據。我的代碼看起來類似於下面,因爲我通過查詢來搜索多個ID(在我的情況下,很多)。當我一次搜索太多ID時,問題就出現了。傳入太多ID時,我會收到'Request Entity Too Large'。有沒有辦法解決這個問題?根據我在各種示例中看到的,語法似乎是'id:1或id:2或id:3等'。當搜索多個值時。這有不同的語法,可以減少傳遞到服務中的請求的大小?例如在SQL中,我們可以說'id in(1,2,3等)'。我們可以爲SOLR查詢做類似的事嗎?PHP Solr客戶端 - 請求實體太大
<?php
require_once('SolrPHPClient/Apache/Solr/Service.php');
$solr = new Apache_Solr_Service('localhost', '8983', '/solr');
$offset = 0;
$limit = 10;
$queries = array(
'id: 1 OR id: 2 OR id:3 OR id:4 OR id:5 OR id:6 or id:7 or id:8' // in my case, this list keeps growing and growing
);
foreach ($queries as $query) {
$response = $solr->search($query, $offset, $limit);
if ($response->getHttpStatus() == 200) {
print_r($response->getRawResponse());
}
else {
echo $response->getHttpStatusMessage();
}
}
?>
我也有類似的問題,但切換到像 viewPermGroupId搜索的另一個符號:(ANY或018f5984be10c58ac950f3de8223d76a或021132071593b65c1d9ea28d60ac57c3) 那是一個有點短.... – cljk