Вы ищете параметры HTTP или параметры URI?
Параметры HTTP - это такие вещи, как пользовательский агент, размер буфера сокета, версия протокола и т. Д.
Параметры URI - это значения клиента, которые передаются как часть запроса, например,
?param1=value1¶m2=value2
Если вы ищете параметры URI, попробуйте что-то вроде этого:
List<String> uriParams = Arrays.asList(request.getURI().getQuery().split("&"));
Но если вам нужны необработанные HTTP-параметры, это немного сложнее, потому что не все реализации HttpParams поддерживают getNames()
. Вы должны сделать что-то вроде этого:
HttpParamsNames params = (HttpParamsNames)request.getParams();
Set<String> names;
if (params instanceof ClientParamsStack) {
names = new HashSet<>();
// Sorted by priority, see ClientParamsStack
ClientParamsStack cps = (ClientParamsStack)params;
if (cps.getApplicationParams() != null) {
names.addAll(((HttpParamsNames)cps.getApplicationParams()).getNames());
}
if (cps.getClientParams() != null) {
names.addAll(((HttpParamsNames)cps.getClientParams()).getNames());
}
if (cps.getRequestParams() != null) {
names.addAll(((HttpParamsNames)cps.getRequestParams()).getNames());
}
if (cps.getOverrideParams() != null) {
names.addAll(((HttpParamsNames)cps.getOverrideParams()).getNames());
}
} else {
names = params.getNames();
}
for (String name : names) {
System.out.println(name + ": " + request.getParams().getParameter(name));
}