HttpUrlContext 简单实用2

public class HttpConnect {
private boolean isCancel=false;

public boolean isCancel() {
return isCancel;
}


public void setCancel(boolean isCancel) {
this.isCancel = isCancel;
}


private byte[] open(String StrUrl,String requestMethod,String postData)
{
byte[] data=null;
InputStream is=null;
OutputStream os=null;
ByteArrayOutputStream baos=null;
HttpURLConnection conn=null;
try {

//建立连接
URL url=new URL(StrUrl);
conn=(HttpURLConnection) url.openConnection();
//设置参数
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestMethod(requestMethod);
//重点
//conn.setRequestProperty("Host", "124.207.192.18:8080");
//conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET ");
//
conn.setConnectTimeout(6000);
conn.setReadTimeout(6000);
//输出数据
if (postData!=null)
{
byte[] sendData=postData.getBytes("UTF-8");
os=conn.getOutputStream();
os.write(sendData);
}
//接收数据
//100
//200 成功
//300
//404 文件不存在
//500 服务器错误
int responseCode=conn.getResponseCode();
if (responseCode==200)
{
if (isCancel)
{
LogUtil.i("netowrk","已经取消了连接");
return null;
}
is=conn.getInputStream();
byte[] buffer=new byte[8*1024];
int size=-1;
baos=new ByteArrayOutputStream();
while((size=is.read(buffer))!=-1)
{
//baos变成fileOutputStream
baos.write(buffer,0,size);
}
data=baos.toByteArray();
}

} catch (Exception e) {
ExceptionUtil.handleException(e);
// TODO: handle exception
}finally
{
try {
if (is!=null)
is.close();
if (os!=null)
{
os.close();
}
if (baos!=null)
baos.close();
if (conn!=null)
conn.disconnect();
} catch (Exception e2) {
ExceptionUtil.handleException(e2);


// TODO: handle exception
}
}
if (isCancel)
{
LogUtil.i("netowrk","已经取消了连接");
return null;
}
return data;
}

public byte[] getRequest(String url)
{
return open(url,"GET",null);
}
public byte[] postRequest(String url,String postData)
{
return open(url,"POST",postData);
}
// public byte[] PostFileRequest(String url,byte[] fileContent)
// {
//
// }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值