打开APP
未登录
开通VIP,畅享免费电子书等14项超值服
开通VIP
首页
好书
留言交流
下载APP
联系客服
JAVA通过HTTP访问:Post+Get方式
nacy2012
>《HttpClient》
2015.10.13
关注
public
class
TestGetPost {
/**
* 向指定URL发送GET方法的请求
* @param url 发送请求的URL
* @param param 请求参数,请求参数应该是name1=value1&name2=value2的形式。
* @return URL所代表远程资源的响应
*/
public
static
String sendGet(String url, String param) {
String result =
""
;
BufferedReader in =
null
;
try
{
String urlName = url +
"?"
+ param;
URL realUrl =
new
URL(urlName);
//打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
//设置通用的请求属性
conn.setRequestProperty(
"accept"
,
"*/*"
);
conn.setRequestProperty(
"connection"
,
"Keep-Alive"
);
conn.setRequestProperty(
"user-agent"
,
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
);
//建立实际的连接
conn.connect();
//获取所有响应头字段
Map < String, List < String >> map = conn.getHeaderFields();
//遍历所有的响应头字段
for
(String key: map.keySet()) {
System.out.println(key +
"--->"
+ map.get(key));
}
//定义BufferedReader输入流来读取URL的响应
in =
new
BufferedReader(
new
InputStreamReader(conn.getInputStream()));
String line;
while
((line = in .readLine()) !=
null
) {
result +=
"/n"
+ line;
}
}
catch
(Exception e) {
System.out.println(
"发送GET请求出现异常!"
+ e);
e.printStackTrace();
}
//使用finally块来关闭输入流
finally
{
try
{
if
( in !=
null
) { in .close();
}
}
catch
(IOException ex) {
ex.printStackTrace();
}
}
return
result;
}
/**
* 向指定URL发送POST方法的请求
*
@param
url 发送请求的URL
*
@param
param 请求参数,请求参数应该是name1=value1&name2=value2的形式。
*
@return
URL所代表远程资源的响应
*/
public
static
String sendPost(String url, String param) {
PrintWriter out =
null
;
BufferedReader in =
null
;
String result =
""
;
try
{
URL realUrl =
new
URL(url);
//打开和URL之间的连接
URLConnection conn = realUrl.openConnection();
//设置通用的请求属性
conn.setRequestProperty(
"accept"
,
"*/*"
);
conn.setRequestProperty(
"connection"
,
"Keep-Alive"
);
conn.setRequestProperty(
"user-agent"
,
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
);
//发送POST请求必须设置如下两行
conn.setDoOutput(
true
);
conn.setDoInput(
true
);
//获取URLConnection对象对应的输出流
out =
new
PrintWriter(conn.getOutputStream());
//发送请求参数
out.print(param);
//flush输出流的缓冲
out.flush();
//定义BufferedReader输入流来读取URL的响应
in =
new
BufferedReader(
new
InputStreamReader(conn.getInputStream()));
String line;
while
((line = in .readLine()) !=
null
) {
result +=
"/n"
+ line;
}
}
catch
(Exception e) {
System.out.println(
"发送POST请求出现异常!"
+ e);
e.printStackTrace();
}
//使用finally块来关闭输出流、输入流
finally
{
try
{
if
(out !=
null
) {
out.close();
}
if
( in !=
null
) { in .close();
}
}
catch
(IOException ex) {
ex.printStackTrace();
}
}
return
result;
}
//提供主方法,测试发送GET请求和POST请求
public
static
void
main(String args[]) {
//发送GET请求
String s = TestGetPost.sendGet(
"http://localhost:8888/abc/login.jsp"
,
null
);
System.out.println(s);
//发送POST请求
String s1 = TestGetPost.sendPost(http:
//localhost:8888/abc/a.jsp ,
"user=李刚&pass=abc"
);
System.out.println(s1);
}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报
。
打开APP,阅读全文并永久保存
查看更多类似文章
猜你喜欢
类似文章
【热】
打开小程序,算一算2024你的财运
java发送http的get、post请求
Java发送http get/post请求,调用接口/方法
java微信 客服接口
短信验证码登录的实现流程
java 发送post请求
Java爬虫的底层获取模块,构造POC和漏洞检测时常用爬虫抓取或发送测试代码查询目标站 ...
更多类似文章 >>
生活服务
热点新闻
留言交流
回顶部
联系我们
分享
收藏
点击这里,查看已保存的文章
导长图
关注
一键复制
下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!
联系客服
微信登录中...
请勿关闭此页面
先别划走!
送你5元优惠券,购买VIP限时立减!
5
元
优惠券
优惠券还有
10:00
过期
马上使用
×