700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > java后台获取流_java后台发送请求获取数据 并解析json数据

java后台获取流_java后台发送请求获取数据 并解析json数据

时间:2024-05-06 01:26:24

相关推荐

java后台获取流_java后台发送请求获取数据 并解析json数据

packagecom.bs.utils;importjava.io.BufferedReader;importjava.io.InputStreamReader;importjava.io.PrintWriter;.URL;.URLConnection;importjava.util.List;importjava.util.Map;public classBackEndHttpRequest {/*** 向指定的URL发送GET方法的请求

*@paramurl 发送请求的URL

*@paramparam 请求参数,请求参数应该是 name1=value1&name2=value2 的形式

*@return远程资源的响应结果*/

public staticString sendGet(String url, String param) {

String result= "";

BufferedReader bufferedReader= null;try{//1、读取初始URL

String urlNameString = url + "?" +param;//2、将url转变为URL类对象

URL realUrl = newURL(urlNameString);//3、打开和URL之间的连接

URLConnection connection =realUrl.openConnection();//4、设置通用的请求属性

connection.setRequestProperty("accept", "*/*");

connection.setRequestProperty("connection", "Keep-Alive");

connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");//connection.setRequestProperty("Content-Type", "application/json; charset=utf-8");//5、建立实际的连接

connection.connect();//获取所有响应头字段

Map> map =connection.getHeaderFields();//遍历所有的响应头字段

for(String key : map.keySet()) {

System.out.println(key+ "---->" +map.get(key));

}//6、定义BufferedReader输入流来读取URL的响应内容 ,UTF-8是后续自己加的设置编码格式,也可以去掉这个参数

bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream(),"UTF-8"));

String line= "";while(null != (line =bufferedReader.readLine())) {

result+=line;

}//int tmp;//while((tmp = bufferedReader.read()) != -1){//result += (char)tmp;//}

}catch(Exception e) {//TODO: handle exception

System.out.println("发送GET请求出现异常!!!" +e);

e.printStackTrace();

}finally { //使用finally块来关闭输入流

try{if(null !=bufferedReader) {

bufferedReader.close();

}

}catch(Exception e2) {//TODO: handle exception

e2.printStackTrace();

}

}returnresult;

}/*** 向指定的URL发送POST方法的请求

*@paramurl 发送请求的URL

*@paramparam 请求参数,请求参数应该是 name1=value1&name2=value2 的形式

*@return远程资源的响应结果*/

public staticString sendPost(String url, String param) {

String result= "";

BufferedReader bufferedReader= null;

PrintWriter out= null;try{//1、2、读取并将url转变为URL类对象

URL realUrl = newURL(url);//3、打开和URL之间的连接

URLConnection connection =realUrl.openConnection();//4、设置通用的请求属性

connection.setRequestProperty("accept", "*/*");

connection.setRequestProperty("connection", "Keep-Alive");

connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");//发送POST请求必须设置如下两行

connection.setDoInput(true);

connection.setDoOutput(true);//5、建立实际的连接//connection.connect();//获取URLConnection对象对应的输出流

out = newPrintWriter(connection.getOutputStream());//发送请求参数

out.print(param);//flush输出流的缓冲

out.flush();//

//6、定义BufferedReader输入流来读取URL的响应内容

bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream(),"UTF-8"));

String line;while(null != (line =bufferedReader.readLine())) {

result+=line;

}

}catch(Exception e) {//TODO: handle exception

System.out.println("发送POST请求出现异常!!!" +e);

e.printStackTrace();

}finally { //使用finally块来关闭输出流、输入流

try{if(null !=out) {

out.close();

}if(null !=bufferedReader) {

bufferedReader.close();

}

}catch(Exception e2) {//TODO: handle exception

e2.printStackTrace();

}

}returnresult;

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。