2016-06-21 4 views
0

Я использую php и solr, проблема, с которой я сталкиваюсь, заключается в том, что всякий раз, когда запрос строится динамически, иногда возникают ситуации, когда запрос не имеет надлежащего синтаксиса или соответствующих параметров.Apache solr проверяющий запрос перед выполнением его на solr

В результате я получаю ошибку в журналах solr.

Мне нужно решение, чтобы приложения с синтаксическими ошибками не выполнялись приложением.

ответ

0

Ваша библиотека Solr должна обрабатывать все для вас - ускользание, когда требуется экранирование, и т. Д. Если вы сами создаете URL-адрес, вы получите have to escape the values, что Solr expects to be escaped, и правильно urlencode значения по мере необходимости.

Вот список из ClientUtils ссылки выше:

// These characters are part of the query syntax and must be escaped 
    if (c == '\\' || c == '+' || c == '-' || c == '!' || c == '(' || c == ')' || c == ':' 
    || c == '^' || c == '[' || c == ']' || c == '\"' || c == '{' || c == '}' || c == '~' 
    || c == '*' || c == '?' || c == '|' || c == '&' || c == ';' || c == '/' 
    || Character.isWhitespace(c)) {