Проанализируйте Строку запроса с HTTPclient для извлечения nameValuePairs

Есть ли утилита Apache, которая берет Строку запроса и некоторую Карту кодирования и возврата ключа, значение [] декодируемый URL?

7
задан redochka 30 March 2013 в 20:25
поделиться

1 ответ

Он устарел, но вы можете использовать HttpUtils.parseQueryString .

Он сопоставляет имена параметров со значениями. Если параметр встречается более одного раза, значение представляет собой массив.

РЕДАКТИРОВАТЬ: Вышеупомянутый метод устарел, потому что он не позволяет вам указывать кодировку символов.

В проекте HttpClient в apache есть классы, необходимые для этого.

Используйте URIUtil.decode (строковые данные, строковое кодирование) для декодирования строки запроса.

Затем ParameterParser.parse (запрос строки, разделитель символов) , чтобы получить список NameValuePair s. Затем вы можете поместить их в Commons Collections MultiMap , введя ключ по имени параметра. (Вы можете использовать обычную хеш-карту, но это требует большего количества кода для обработки нескольких значений для каждого ключа.)

8
ответ дан 6 December 2019 в 12:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: