android post请求
来源:互联网 发布:男科网络咨询说话技巧 编辑:程序博客网 时间:2024/04/20 07:42
public
class
PureNetUtil {
/**
* get方法直接调用post方法
* @param url 网络地址
* @return 返回网络数据
*/
public
static
String get(String url){
return
post(url,
null
);
}
/**
* 设定post方法获取网络资源,如果参数为null,实际上设定为get方法
* @param url 网络地址
* @param param 请求参数键值对
* @return 返回读取数据
*/
public
static
String post(String url,Map param){
HttpURLConnection conn=
null
;
try
{
URL u=
new
URL(url);
conn=(HttpURLConnection) u.openConnection();
StringBuffer sb=
null
;
if
(param!=
null
){
//如果请求参数不为空
sb=
new
StringBuffer();
/*A URL connection can be used for input and/or output. Set the DoOutput
* flag to true if you intend to use the URL connection for output,
* false if not. The default is false.*/
//默认为false,post方法需要写入参数,设定true
conn.setDoOutput(
true
);
//设定post方法,默认get
conn.setRequestMethod(
"POST"
);
//获得输出流
OutputStream out=conn.getOutputStream();
//对输出流封装成高级输出流
BufferedWriter writer=
new
BufferedWriter(
new
OutputStreamWriter(out));
//将参数封装成键值对的形式
for
(Map.Entry s:param.entrySet()){
sb.append(s.getKey()).append(
"="
).append(s.getValue()).append(
"&"
);
}
//将参数通过输出流写入
writer.write(sb.deleteCharAt(sb.toString().length()-
1
).toString());
writer.close();
//一定要关闭,不然可能出现参数不全的错误
sb=
null
;
}
conn.connect();
//建立连接
sb=
new
StringBuffer();
//获取连接状态码
int
recode=conn.getResponseCode();
BufferedReader reader=
null
;
if
(recode==
200
){
//Returns an input stream that reads from this open connection
//从连接中获取输入流
InputStream in=conn.getInputStream();
//对输入流进行封装
reader=
new
BufferedReader(
new
InputStreamReader(in));
String str=
null
;
sb=
new
StringBuffer();
//从输入流中读取数据
while
((str=reader.readLine())!=
null
){
sb.append(str).append(System.getProperty(
"line.separator"
));
}
//关闭输入流
reader.close();
if
(sb.toString().length() ==
0
) {
return
null
;
}
return
sb.toString().substring(
0
,
sb.toString().length() - System.getProperty(
"line.separator"
).length());
}
}
catch
(Exception e) {
e.printStackTrace();
return
null
;
}
finally
{
if
(conn!=
null
)
//关闭连接
conn.disconnect();
}
return
null
;
}
}
0 0
- android http post请求
- Android执行POST请求
- android发送post请求
- Android发送post请求
- Android发送post请求
- Android发送post请求
- Android post请求
- Android 的Post请求
- Android POST GET请求
- android POST请求
- Android发送post请求
- Android HttpURLConnection post请求
- Android Http POST请求
- android post请求
- android----httpcilent post请求
- Android get、post请求
- Android Http get post请求
- Android Http get post请求
- mysql索引与范式
- 数据结构之双向链表(C语言实现)
- NULL¬ NULL
- android 网络请求获得返回数据(1)
- spring boot 整合 spring security 之使用数据库验证
- android post请求
- DB2 C language external scalar user-defined function
- C::有趣的约瑟夫环
- 最大子矩阵(贪心)
- iOS 10 开发适配系列 之 权限Crash问题
- NOIP2016 总结
- DB2 how to drop overloaded functions
- storm安装
- 【汇编】十以内冒泡排序