public class MyHttpUrlCon {

     public static String settionId = "";

     public static final int TIMEOUT = ;//

     public ReturnData doGet(String urlString) {
HttpURLConnection conn = null;
try { URL url = new URL(urlString);
conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout();
conn.setReadTimeout();
conn.setRequestMethod("GET");
conn.setRequestProperty("cookie", settionId);
conn.connect(); if (conn.getHeaderField("set-cookie") != null) {
settionId = conn.getHeaderField("set-cookie");
Log.d("mm", "Constants.settionId:" + settionId);
} else {
return new ReturnData(ReturnData.TimeOut, "");
} if (conn.getResponseCode() == ) {
InputStream is = conn.getInputStream();
BufferedReader bf = new BufferedReader(
new InputStreamReader(is));
String line = "";
StringBuilder sb = new StringBuilder();
while ((line = bf.readLine()) != null) {
sb.append(line);
}
String jsonString = sb.toString().replace("\n", "\\n")
.replace("\r", "\\r");
String jsonStr = jsonString.substring(jsonString.indexOf("{"),
jsonString.length()); return new ReturnData(ReturnData.Succee, jsonStr); } else {
return new ReturnData(ReturnData.NoRespond, "");
} } catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return new ReturnData(ReturnData.NoRespond, "");
} finally {
if (conn != null) {
conn.disconnect();
}
}
} public ReturnData doPost(String urlString, String params) {
URL url;
HttpURLConnection conn = null;
InputStream input = null;
try {
url = new URL(urlString);
conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(); // 请求超时
conn.setRequestMethod("POST"); // 请求方式
conn.setReadTimeout(); // 读取超时
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setRequestProperty("Charset", "UTF-8");
conn.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
// conn.setRequestProperty("cookie", settionId);
OutputStream os = conn.getOutputStream();
System.out.println("请求的参数" + params);
os.write(params.getBytes("utf-8"));
os.close(); if (conn != null) {
int code = conn.getResponseCode();
System.out.println(code + ":");
if (code == ) {
input = conn.getInputStream();
BufferedReader bf = new BufferedReader(
new InputStreamReader(input));
String line = "";
StringBuilder sbuilder = new StringBuilder();
while ((line = bf.readLine()) != null) {
sbuilder.append(line);
}
System.out.println(sbuilder.toString());
String jsonString = sbuilder.toString()
.replace("\n", "\\n").replace("\r", "\\r");
String jsonStr = jsonString.substring(
jsonString.indexOf("{"), jsonString.length());
return new ReturnData(ReturnData.Succee, jsonStr);
} else {
return new ReturnData(ReturnData.NoRespond, "");
}
} else {
return new ReturnData(ReturnData.NoRespond, "");
}
} catch (Exception e) {
e.printStackTrace();
return new ReturnData(ReturnData.NoRespond, "");
} finally {
if (conn != null) {
conn.disconnect();
}
}
} }

public class ReturnData {

public final static int ParserError = -3;
public final static int ParamsError = -2;
public final static int False = -1;
public final static int Succee = 0;
public final static int TimeOut = 1;
public final static int NoRespond = 2;

// 网络请求标记
private int code;
// 返回数据
private String data;

public ReturnData(int code, String data) {
this.code = code;
this.data = data;
}

/**
* 网络请求标记
*
* @return
*/
public int getCode() {
return code;
}

/**
* 网络请求标记
*
* @param code
*/
public void setCode(int code) {
this.code = code;
}

/**
* 返回数据
*
* @return
*/
public String getData() {
return data;
}

/**
* 返回数据
*
* @param data
*/
public void setData(String data) {
this.data = data;
}

}

最新文章

  1. VS2010中,无法嵌入互操作类型“……”,请改用适用的接口的解决方法(转自网络)
  2. 【学】React的学习之旅1
  3. VM12安装OS X10.11步骤及说明
  4. Python自然语言工具包(NLTK)入门
  5. C# 之 判断或设置以管理员身份运行程序
  6. 在Eclipse中格式化Android代码
  7. <经验杂谈>C#/.Net字符串操作方法小结
  8. C++时间获取
  9. dotnet tools 运行 dotnet run
  10. [妙味Ajax]第一课:原理和封装
  11. ios UIKit动力
  12. MVC框架实例构建
  13. macos 常用快捷键及操作
  14. Notes : <Hands-on ML with Sklearn & TF> Chapter 5
  15. 使用docker-compose部署nginx
  16. git 创建SSH key
  17. java监听器、定时器的使用
  18. rsync基础
  19. React学习笔记一:入门知识概览
  20. node path的几个路径问题

热门文章

  1. CronTrigger中cron表达式使用
  2. java gc日志详解
  3. IOS开发之ZBarReaderView的使用
  4. TP3.2 引入微信类
  5. php 字符串截取
  6. 非常好用的两个PHP函数 serialize()和unserialize()
  7. python "=",深,浅 拷贝
  8. 嵌入式开发之davinci--- 8148/8168/8127 中的alsa音频pcm g711 和aac 音频格式
  9. PHP 微信错误状态返回码说明
  10. jsx编译器 atom