Android Http Get Post
- 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;
}
}
Android Http Get Post的更多相关文章
- 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新
本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...
- 配置android sdk 环境
1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/
- Android SwipeRefreshLayout 下拉刷新——Hi_博客 Android App 开发笔记
以前写下拉刷新 感觉好费劲,要判断ListView是否滚到顶部,还要加载头布局,还要控制 头布局的状态,等等一大堆.感觉麻烦死了.今天学习了SwipeRefreshLayout 的用法,来分享一下,有 ...
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android请求网络共通类——Hi_博客 Android App 开发笔记
今天 ,来分享一下 ,一个博客App的开发过程,以前也没开发过这种类型App 的经验,求大神们轻点喷. 首先我们要创建一个Andriod 项目 因为要从网络请求数据所以我们先来一个请求网络的共通类. ...
- 【原】Android热更新开源项目Tinker源码解析系列之一:Dex热更新
[原]Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Tinker是微信的第一个开源项目,主要用于安卓应用bug的热修复和功能的迭代. Tinker github地址:http ...
- 【原】Android热更新开源项目Tinker源码解析系列之二:资源文件热更新
上一篇文章介绍了Dex文件的热更新流程,本文将会分析Tinker中对资源文件的热更新流程. 同Dex,资源文件的热更新同样包括三个部分:资源补丁生成,资源补丁合成及资源补丁加载. 本系列将从以下三个方 ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
- JS调用Android、Ios原生控件
在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...
- Android UI体验之全屏沉浸式透明状态栏效果
前言: Android 4.4之后谷歌提供了沉浸式全屏体验, 在沉浸式全屏模式下, 状态栏. 虚拟按键动态隐藏, 应用可以使用完整的屏幕空间, 按照 Google 的说法, 给用户一种 身临其境 的体 ...
随机推荐
- object is not an instance of declaring class
错误原因:invoke方法的时候,应该是类的实例对象,而不是类本身 解决方法:把 PowerMockito.doReturn(index_expect).when(IndexController.cl ...
- 修改PHP session 默认时间方法
修改三行如下: 1.session.use_cookies把这个的值设置为1,利用cookie来传递sessionid 2.session.cookie_lifetime这个代表SessionID在客 ...
- Java正则表达式之Matcher类的find和matches方法的区别
讨论整个问题之前,先看个例子: 从上面的例子可以看出 matches()是整个字符串完全匹配时,才会返回true 而find()则只需要字符串中,找到某部分的子字符串匹配则返回true ...
- 对象中prototype与__proto__与从cinstructor的作用和区别
首先先要知道prototype什么时间才会有 只有在创建函数的时候,每当函数创建的时候才会原型prototype,还有一个constructor,这个不是函数独有的,对象也有 下面就来说说对象prot ...
- Datagrid方法扩展 - tooltip
最新版本的jQuery Easyui新出来了一个组件叫tooltip,就是提示框.以前的版本没有这个组件的时候就有很多在问,datagrid的单元格,我要加鼠标提示要怎么做.原来我告诉他们的方法都是用 ...
- Spring MVC文本框
以下示例显示如何使用Spring Web MVC框架在表单中使用文本框.首先使用Eclipse IDE来创建一个Web工程,按照以下步骤使用Spring Web Framework开发基于动态表单的W ...
- poj 1270(dfs+拓扑排序)
题目链接:http://poj.org/problem?id=1270 思路:就是一简单的dfs+拓扑排序,然后就是按字典序输出所有的情况. http://paste.ubuntu.com/59872 ...
- Gson和Fastjson的使用
转载自:JSON技术的调研报告 一.Google的Gson包的使用简单介绍. Gson类:解析json的最基础的工具类 JsonParser类:解析器来解析JSON到JsonElements的解析树 ...
- HDOJ 5044 Tree
树链剖分裸题. . .. 又要扩栈又要输入挂还卡格式....真无语 Tree Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 6553 ...
- redis 集群出现的错误
1 解决方法: 不用 Jedis jed =new jedis("192.168.56.101"); jed.set(key,value); 用 Set<HostAndPor ...