HttpURLConnection请求网络小练习

转载 2016年05月31日 14:53:07
package com.example.day_04_httpurlconnection;


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;


import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;


public class MainActivity extends Activity {


private TextView textView;



Handler handler=new Handler(){
public void handleMessage(android.os.Message msg) {

String data = (String) msg.obj;
textView.setText(data);
};


};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

textView = (TextView) findViewById(R.id.textView);


new Thread() {


public void run() {
getData();
};


}.start();

}


/**
* 联网请求数据
*/
private void getData() {
try {

//得到URL对象,并设置访问地址
URL url=new URL("http://www.baidu.com/");
//得到HttpURLConnection对象
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
//设置连接超时
httpURLConnection.setConnectTimeout(5000);
//设置请求方式 get/post
httpURLConnection.setRequestMethod("POST");
//读取超时
httpURLConnection.setReadTimeout(5000);

//正式联网
httpURLConnection.connect();
//获得状态码
int code =httpURLConnection.getResponseCode();

if(code==200){

System.out.println("联网请求成功");

//获取包含数据的输入流
InputStream inputStream = httpURLConnection.getInputStream();

BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
//记录每一行读取的数据
String data;
//拼接字符串
StringBuffer stringBuffer=new StringBuffer();
while ((data=bufferedReader.readLine())!=null) {
stringBuffer.append(data);

}


/* System.out.println(stringBuffer.toString());

textView.setText(stringBuffer.toString());*/

Message msg = Message.obtain();
msg.obj=stringBuffer.toString();
handler.sendMessage(msg);

}else{

System.out.println("联网失败");

}




} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}


}






}

Android HttpUrlConnection 发送网络请求步骤总结

1,URL url = new URL(path); 2,通过url获取连接 HttpURLConnection conn = (HttpURLConnection) url.openC...
  • renjianhhong
  • renjianhhong
  • 2015年11月24日 14:20
  • 1274

使用HttpURLConnection请求Gson网络解析数据

解析 JSON 数据 使用官方提供的 JSONObject,也可以使用谷歌的开源库 GSON.package com.gaoo.httpclientdemo;import android.os.Bun...
  • blueshell001
  • blueshell001
  • 2016年07月07日 17:53
  • 1505

Android开发之网络请求通信专题(一):基于HttpURLConnection的请求通信

在Android开发中,网络请求必然是必不可少。一般而言,都是基于http的网络请求。有时候也会有SOCKET请求,这个后续的专题再讲。今天,我们就先讲讲常用的Http请求。 http求情自然是遵循h...
  • victorfreedom
  • victorfreedom
  • 2015年01月24日 16:50
  • 1676

网络请求----HttpURLConnection的get,post和图片加载

  • 2016年12月05日 14:28
  • 242KB
  • 下载

HttpUrlConnection网络请求,图片+文字

//工具类 package com.wzq.urlcondemo.utils; import android.graphics.Bitmap; import android.graphic...
  • yin_chenglong
  • yin_chenglong
  • 2017年12月29日 16:51
  • 17

Android使用HttpURLConnection请求网络返回JSON数据并解析

要求:制作一个类似于今日头条的客户端,首页显示10条新闻。思路:使用Android的HttpURLConnection类请求一个URL,返回JSON数据,并使用自带的JSONArray类进行解析。方法...
  • mayuko2012
  • mayuko2012
  • 2017年06月16日 19:51
  • 692

HttpUrlConnection 网络请求工具类

开发过程中常用的网络请求工具类import android.os.Build;import java.io.ByteArrayOutputStream; import java.io.FileNotF...
  • blueZhangFun
  • blueZhangFun
  • 2015年12月18日 13:48
  • 1390

简单介绍HttpURLConnection请求网络以及AsyncTask异步任务的用法

简单的介绍网络请求方式和异步任务
  • chenzhi0712
  • chenzhi0712
  • 2016年06月28日 14:33
  • 539

从零开始搞懂Android网络请求——HttpURLConnection

本篇博客主要讲解如何使用HttpURLConnection来实现获取服务器的数据。 本篇博客实现的是一个简单的点击按钮获取服务器数据的Demo实现步骤: 实例化一个URL对象 实例化一个httpUR...
  • qq_36407875
  • qq_36407875
  • 2017年11月06日 23:48
  • 32

初学使用HttpURLConnection访问网络之发送GET请求

初学使用HttpURLConnection访问网路之get方法
  • u010988549
  • u010988549
  • 2014年06月09日 23:53
  • 348
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HttpURLConnection请求网络小练习
举报原因:
原因补充:

(最多只允许输入30个字)