Подтвердить что ты не робот

Как распечатать содержимое запроса httprequest?

У меня есть ошибка, связанная с httprequest, которая иногда случается, поэтому я хотел бы зарегистрировать контент запроса HttpGet и HttpPost, когда это произойдет.

Итак, скажем, я создаю HttpGet следующим образом:

HttpGet g = new HttpGet();
g.setURI(new URI("http://www.google.com"));
g.setHeader("test", "hell yeah");

Это строковое представление, которое я хотел бы получить:

GET / HTTP/1.1
Host: www.google.com
test: hell yeah

С запросом post я также хотел бы получить строку содержимого.

Каков самый простой способ сделать это в java для Android?

4b9b3361

Ответ 1

Вы можете напечатать тип запроса, используя:

request.getMethod();

Вы можете распечатать все заголовки, как указано здесь:

Enumeration<String> headerNames = request.getHeaderNames();
while(headerNames.hasMoreElements()) {
  String headerName = headerNames.nextElement();
  System.out.println("Header Name - " + headerName + ", Value - " + request.getHeader(headerName));
}

Чтобы распечатать все параметры запроса, используйте это:

Enumeration<String> params = request.getParameterNames(); 
while(params.hasMoreElements()){
 String paramName = params.nextElement();
 System.out.println("Parameter Name - "+paramName+", Value - "+request.getParameter(paramName));
}

request является экземпляром HttpServletRequest

Вы можете украсить выходы в соответствии с вашими потребностями.