qq_35151249
正飞
采纳率0%
2018-12-03 07:19

# Java如何获取指定URL页面所提交的内容?

  • 1. # Java如何获取指定URL页面所提交的内容? 代码如下,通过浏览器访问返回的是“123”,但是后台输出却是一个页面,怎么才能通过访问“http://localhost:8080/test/index.jsp”后台也返回“123”? @RequestMapping("/fs") @ResponseBody public String fs(String user){ return "123"; } public static void main(String[] args) { String path = "http://localhost:8080/test/index.jsp"; String a =interfaceUtil(path,""); }

public static String interfaceUtil(String path, String date){
String str = "";
try {
URL url = new URL(path);
//打开和url之间的连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
PrintWriter out = null;
//设置通用的请求属性
conn.setRequestProperty("accept", "*/*");
conn.setRequestProperty("connection", "Keep-Alive");
conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
//设置是否向httpUrlConnection输出,设置是否从httpUrlConnection读入
conn.setDoOutput(true);
conn.setDoInput(true);
//conn.setInstanceFollowRedirects(true);
//获取URLConnection对象对应的输出流
out = new PrintWriter(conn.getOutputStream());
//发送请求参数即数据
out.print(date);
//缓冲数据
out.flush();
out.close();
//获取URLConnection对象对应的输入流
InputStream is = conn.getInputStream();
//构造一个字符流缓存
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
str+=line;
}
//关闭流
is.close();
//断开连接
conn.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
return str;
}
调用该方法得到一个页面:

图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • qq_38270796 D狂风R 3年前

    String path = "http://localhost:8080/dy/fs.do";
    浏览器会解析页面加载js执行jQuery方法然后再发一次请求,你这个请求是获取浏览器要加载的页面,js并没有触发,也就不会发请求重新加载dom元素了

    点赞 评论 复制链接分享

相关推荐