在Java中从HTML http响应读取参数值
我的http响应在Java中从HTML http响应读取参数值,java,html,http,httpresponse,Java,Html,Http,Httpresponse,我的http响应 HttpResponse response = httpClient.execute(request); // Read response using StringBuilder StringBuilder sb = new StringBuilder(); BufferedReader reader = new BufferedReader(new InputStreamReade
HttpResponse response = httpClient.execute(request);
// Read response using StringBuilder
StringBuilder sb = new StringBuilder();
BufferedReader reader = new BufferedReader(new InputStreamReader(
response.getEntity().getContent()), 65728);
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line);
}
// Print response
System.out.println(sb.toString());
来自服务器的响应如下所示
<!DOCTYPE html><html> <head> <title>Redirecting</title> </head> <body> <script> function populateAndSubmitForm() { if(!document.forms[0].PaRes.value) { document.forms[0].PaRes.value = window.parent.timeoutRedirectInformation.TimeoutPaRes; } document.forms[0].MD.value = window.parent.timeoutRedirectInformation.MD; document.forms[0].action = window.parent.timeoutRedirectInformation.Term; document.forms[0].submit(); } </script> <form name="RedirectToTermUrlForm" id="RedirectToTermUrlForm" method="post" target="_self"> <input type="hidden" name="MD"> <input type="hidden" name="PaRes" value="xyz"> </form> <script> populateAndSubmitForm(); </script> <noscript> <div style="font-align:center;"> <h2 style="color:red;">JavaScript is currently disabled or is not supported by your browser.</h2> <h3 style="color:red;">Please enable JavaScript to continue.</h3> </div> </noscript> </body></html>
我需要读取PaRes的值,所以我需要xyz值。我尝试使用枚举和getParam,但结果总是为null。请建议一条出路。谢谢 您需要一个HTML解析器来读取响应并从中提取内容。看看JSoup。谢谢。因为我是jsoup的新手。您知道它提供了哪种方法来获取参数PaRes的值吗?不是用心的,如果我做了,我会回答的。但它提供了很好的教程。和他们一起玩,你会知道你需要知道的一切。谢谢!找到了。谢谢你给我指明了正确的方向。非常感谢!
Document doc = Jsoup.parse(sb.toString());
Element element = doc.select("input[name=PaRes]").first();
String inputValue = element.attr("value");
System.out.println("PaRes "+inputValue);