Android Http POST请求

来源:互联网 发布:桔子数据库 编辑:程序博客网 时间:2024/05/02 02:17

private String strUrl = "http://baidu.con";

URL url= null;

public static String sCookie;

public static Boolean req = false;//作为全局变量 用来保证每次只能有一个进程在获取服务端请求,以免出现多个进程同时执行操作 导致冲突

public String getData(String para1,String para2){

String Res = "";

while(true){

if(req){

req = false;//一个进程进入时关闭系统开关禁止其他进程进入

try{

//基础配置

String strUrl1 = strUrl+para1;

url = new URL(strUrl1);

HttpURLConnection urlConn = (HttpURLConnection)url.openConnection();

urlConn.setDoInput(true);

urlConn.setDoOutput(true);

if(sCookie!=null&&sCookie.length()>0){

urlConn.setRequestProperty("Cookie",sCookie);

}

urlConn.setRequestMethod("POST");

urlConn.setUseCaches(false);

urlConn.setRequestProperty("Content-type","application/x-www-from-urlencoded");

urlConn.setRequestProperty("Charset","utf-8");

urlConn.connect();

DataOutputStream dop = new DataOutputStream(urlConn.getOutputStream());

//参数配置

dop.writeByte(para2);

dop.close();

//接收工作

BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(urlConn.getInputStream()));

String result = "";

String readLine = null;

while((readLine = bufferedReader.readLine())! = null){

result +=readLine;

}

bufferedReader.close();

urlConn.disconnect();

Res = URLDecoder.decode(result,"UTF-8");

String cookie = urlConn.getHeaderField("set-cokkie");

if(cookie!= null&&cookie.length()>0){

sCookie = cookie;

}

}

catch(IOException e){

e.printStackTrace();

}

finally{

req = true;//释放服务,允许其他进程访问服务器

}

return Res;

}

}

}

0 0
原创粉丝点击