资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

http请求方式httpURLContention和httpClient

package com.example.http;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.annotation.SuppressLint;
import android.app.Activity;
@SuppressLint("HandlerLeak")
public class MainActivity extends Activity {
 private static final int SHOW_RESPONSE = 0;
 private TextView textView;
 private Button button;
 private Handler handler = new Handler() {
  public void handleMessage(Message msg) {
   switch (msg.what) {
   case SHOW_RESPONSE:
    String response = (String) msg.obj;
    textView.setText(response);
    break;
   }
  }
 };
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  textView = (TextView) findViewById(R.id.webview);
  button = (Button) findViewById(R.id.button);
  button.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
    // sendRequestWithHttpConnection();
    sendRequestWithHttpClient();
   }
  });
 }
 /**
  * httpclient网络访问
  */
 protected void sendRequestWithHttpClient() {
  new Thread(new Runnable() {
   @Override
   public void run() {
    try {
     HttpClient httpClient = new DefaultHttpClient();
     HttpGet httpGet = new HttpGet("http://www.baidu.com");
     HttpResponse httpResponse = httpClient.execute(httpGet);
     if (httpResponse.getStatusLine().getStatusCode() == 200) {
      // 请求成功
      HttpEntity entity = httpResponse.getEntity();
      String response = EntityUtils.toString(entity, "utf-8");
      Message message = new Message();
      message.what = SHOW_RESPONSE;
      message.obj = response.toString();
      handler.sendMessage(message);
     }
    } catch (Exception e) {
     e.printStackTrace();
    } finally {
    }
   }
  }).start();
 }
 /**
  * httpURLConnection网络访问
  */
 protected void sendRequestWithHttpConnection() {
  new Thread(new Runnable() {
   @Override
   public void run() {
    HttpURLConnection connection = null;
    try {
     URL url = new URL("http://www.baidu.com");
     connection = (HttpURLConnection) url.openConnection();
     connection.setRequestMethod("GET");
     connection.setConnectTimeout(8000);
     connection.setReadTimeout(8000);
     connection.setDoInput(true);
     connection.setDoOutput(true);
     InputStream inputStream = connection.getInputStream();
     BufferedReader reader = new BufferedReader(
       new InputStreamReader(inputStream));
     StringBuffer response = new StringBuffer();
     String line;
     while ((line = reader.readLine()) != null) {
      response.append(line);
     }
     Message message = new Message();
     message.what = SHOW_RESPONSE;
     message.obj = response.toString();
     handler.sendMessage(message);
    } catch (Exception e) {
     e.printStackTrace();
    } finally {
     if (connection != null) {
      connection.disconnect();
     }
    }
   }
  }).start();
 }
}
布局:

    
    
    
    
    
        
    

分享题目:http请求方式httpURLContention和httpClient
转载注明:http://cdkjz.cn/article/ijjopc.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220