2016-05-03 1 views
-2

Я использую следующий URL-адрес для получения значений с сервера.Вызвано: java.lang.IllegalArgumentException: Недопустимый символ в запросе по индексу 120

http://yyy.com/2013-01-01/search?q=t*&q.options={"defaultOperator":"and","fields":["name"]}&fq=(and directorytype:'directory1') 

Я gettting следующее сообщение об ошибке при запуске приложения

Caused by: java.lang.IllegalArgumentException: Illegal character in query at index 201 

The error is pointing to the following line of code 

HttpGet httpget = new HttpGet(URL); 

Может кто-нибудь помочь

+0

Если вы хотите отправить данные json, вы не должны использовать 'HttpPost'? –

+0

, пожалуйста, разместите соответствующий код –

+0

Вы проверили 'Незаконный символ в запросе по индексу 201'? Поскольку ваш размещенный URL-адрес очень короткий, мы не можем знать. Как насчет комментария от @SudhirSingh? – SubOptimal

ответ

1

Вам нужно закодировать значения ваших параметров. У вас не может быть пробелов, *, (,) и еще много символов в вашем URL-адресе, например, пространство должно быть вместо% 20. Используйте java.net.URLEncoder.encode(String s, String encoding), чтобы закодировать их.

Смежные вопросы