永发信息网

怎么用java模拟http请求

答案:1  悬赏:60  手机版
解决时间 2021-11-15 07:58
怎么用java模拟http请求
最佳答案

public static String getResult(String urlStr, String content) {
URL url = null;
HttpURLConnection connection = null;

try {
url = new URL(urlStr);
connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setUseCaches(false);
connection.connect();

DataOutputStream out = new DataOutputStream(connection.getOutputStream());
out.writeBytes(content);
out.flush();
out.close();

BufferedReader reader = new BufferedReader(new InputStreamReader(connection
.getInputStream(), "utf-8"));
StringBuffer buffer = new StringBuffer();
String line = "";
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
reader.close();
return buffer.toString();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (connection != null) {
connection.disconnect();
}
}
return null;
}
追问:
没注释吗?
追答:

public static String getResult(String urlStr, String content) {
URL url = null;
HttpURLConnection connection = null;
try {
url = new URL(urlStr);
connection = (HttpURLConnection) url.openConnection();//新建连接实例
connection.setDoOutput(true);//是否打开输出流 true|false
connection.setDoInput(true);//是否打开输入流true|false
connection.setRequestMethod("POST");//提交方法POST|GET
connection.setUseCaches(false);//是否缓存true|false
connection.connect();//打开连接端口
DataOutputStream out = new DataOutputStream(connection.getOutputStream());//打开输出流往对端服务器写数据
out.writeBytes(content);//写数据,也就是提交你的表单 name=xxx&pwd=xxx
out.flush();//刷新
out.close();//关闭输出流
BufferedReader reader = new BufferedReader(new InputStreamReader(connection
.getInputStream(), "utf-8"));//往对端写完数据 对端服务器返回数据 ,以BufferedReader流来读取
StringBuffer buffer = new StringBuffer();
String line = "";
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
reader.close();
return buffer.toString();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (connection != null) {
connection.disconnect();//关闭连接
}
}
return null;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
每天室内原地跑步45分钟算不算运动过量
不是,工作五天的翻译是:什么意思
吃撑怎么造句10个字以上
什么是喻意歇后语百度知道
爸爸比儿子大28岁当爸爸的年龄是儿子的五倍时
江西省赣县湖新中学地址在什么地方,我要处理
闽江水晶三代1.5米的鱼缸质量怎么样?我花了1
HP probook 430 G2 如何设置从U盘启动ghost装
大蒲柴镇到松江河镇多远
天涯明月刀话本心法兑换券一周最多换多少
请问十四k金链子值多少钱?谢谢
有什么AOI可以检测SMT PCB外观不良?
已知矩形ABCD中,AB=2
卫东区平顶山金土产商店这个地址在什么地方,
尿多频繁,要背酸疼是什么情况
推荐资讯
有中介说不考雅思拒签的概率很高,真的吗?
京东您的订单已通过扫描确认是什么意思
雨后,蚯蚓往往会爬到地面上来,这是为什么
为什么斯巴达能战胜雅典?
刚到的CPU 盒装的 这旁边的伤是什么情况
爱情是不是不论怎么样多要义无反顾?
佩特拉健身会馆地址有知道的么?有点事想过去
沧州到承德多少公里小时查询,沧州至承德
黑坑钓鱼什么位置最好
只列综合算式不用计算第二小题电风扇的原价是
地球上的淡水会用完吗?
章丘明水铁道北路限速是多少
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?