package com.szy.http;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
/**
*@author coolszy
*@date 2011-6-16
*@blog http://blog.csdn.net/coolszy
*/
public class BasicHttpClient
{
private static final int TIME_OUT = 1000 * 6; // 超时
private static final String METHOD_POST = "POST";
private static final String METHOD_GET = "GET";
private static final int HTTP_OK = 200;
/**
* 已Get方式模拟Http请求
*/
public String httpGet(String urlStr)
{
URL url = null;
HttpURLConnection conn = null;
InputStream inStream = null;
String response = null;
try
{
url = new URL(urlStr);
conn = (HttpURLConnection) url.openConnection();
conn.setDoInput(true);
conn.setConnectTimeout(TIME_OUT);
conn.setRequestMethod(METHOD_GET);
conn.setRequestProperty("accept", "*/*");
conn.connect();
int responseCode = conn.getResponseCode();
if (responseCode == HTTP_OK)
{
inStream = conn.getInputStream();
response = getResponse(inStream);
}
else
{
response = "返回码:"+responseCode;
}
} catch (Exception e)
{
e.printStackTrace();
}
finally
{
conn.disconnect();
}
return response;
}
public String httpPost(String urlStr, String params)
{
byte[] data = params.getBytes();
URL url = null;
HttpURLConnection conn = null;
InputStream inStream = null;
String response = null;
try
{
url = new URL(urlStr);
conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(TIME_OUT);
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setRequestMethod(METHOD_POST);
conn.setRequestProperty("Connection", "Keep-Alive");
conn.setRequestProperty("Charset", "UTF-8");
conn.setRequestProperty("Content-Length", String.valueOf(data.length));
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
conn.connect();
DataOutputStream outputStream = new DataOutputStream(conn.getOutputStream());
outputStream.write(data);
outputStream.flush();
outputStream.close();
int responseCode = conn.getResponseCode();
if (responseCode == HTTP_OK)
{
inStream = conn.getInputStream();
response = getResponse(inStream);
}
else
{
response = "返回码:"+responseCode;
}
} catch (Exception e)
{
e.printStackTrace();
}
finally
{
conn.disconnect();
}
return response;
}
private String getResponse(InputStream inStream) throws IOException
{
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
int len = -1;
byte[] buffer = new byte[1024];
while((len=inStream.read(buffer))!=-1)
{
outputStream.write(buffer, 0, len);
}
byte[] data = outputStream.toByteArray();
return new String(data);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Android应用源码之31.模拟Http请求(.zip项目安卓应用源码下载Android应用源码之31.模拟Http请求(.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考
资源详情
资源评论
资源推荐
收起资源包目录
Android应用源码之31.模拟Http请求(.zip (30个子文件)
Android应用源码之31.模拟Http请求(
Android应用源码之31.模拟Http请求(
31.模拟Http请求
src
23.HttpDemo
bin
23.HttpDemo.apk 16KB
classes.dex 8KB
com
szy
http
MainActivity.class 505B
R$layout.class 376B
R$drawable.class 382B
ApacheHttpClient.class 3KB
R$attr.class 322B
ApacheHttpClientTest.class 2KB
BasicHttpClient.class 3KB
R.class 453B
BasicHttpClientTest.class 1KB
R$string.class 409B
resources.ap_ 10KB
res
drawable-ldpi
icon.png 2KB
drawable-hdpi
icon.png 4KB
values
strings.xml 171B
drawable-mdpi
icon.png 3KB
layout
main.xml 382B
assets
default.properties 362B
gen
com
szy
http
R.java 634B
proguard.cfg 1KB
src
com
szy
http
BasicHttpClientTest.java 730B
ApacheHttpClient.java 2KB
MainActivity.java 336B
BasicHttpClient.java 3KB
ApacheHttpClientTest.java 1KB
.project 847B
.classpath 280B
AndroidManifest.xml 962B
doc
31.模拟Http请求.ppt 229KB
video
共 30 条
- 1
yxkfw
- 粉丝: 76
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0