android访问http服务器的几种方法


public class MainActivity extends Activity {
	String TAG = "MainActivity";

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

			@Override
			public void run() {
				// TODO Auto-generated method stub
				URL url;
				try {
					url = new URL(
							"http://192.168.1.123:8080/FirsetSelevet/ch10?aaa=abcdef");

				//***********************HttpURLConnection接口*********************	
				HttpURLConnection mHttpURLConnection = (HttpURLConnection) url
							.openConnection();
					int reps = mHttpURLConnection.getResponseCode();
					InputStream is = mHttpURLConnection.getInputStream();
					InputStreamReader ir = new InputStreamReader(is);
					BufferedReader br = new  BufferedReader(ir);
					String inputLine = br.readLine();
					Log.i(TAG, inputLine);
					is.close();
					mHttpURLConnection.disconnect();
					
					
					//***********************HttpClient接口*********************
					//Get方式。参数直接放到url中
					 HttpClient hc = new DefaultHttpClient();
					 HttpGet hg = new HttpGet("http://192.168.1.123:8080/FirsetSelevet/ch10?aaa=abcdef");// 使用get方法
					 HttpResponse hr = hc.execute(hg);
					 if(hr.getStatusLine().getStatusCode()==HttpStatus.SC_OK){
						 Log.i(TAG, EntityUtils.toString(hr.getEntity()));
					 }
//					 
					
					//Post方式。参数直接放到Entity中,这种方式在传输的时候更加安全一点
					 HttpPost hp = new HttpPost("http://192.168.1.123:8080/FirsetSelevet/ch10");
					 List params = new ArrayList<NameValuePair>();
					 params.add(new BasicNameValuePair("aaa", "abcdef"));
					 HttpEntity he = new UrlEncodedFormEntity(params, "gb2312");
					 hp.setEntity(he);
					 HttpResponse hr1 = hc.execute(hp);
					 HttpEntity hget = hr1.getEntity();
					
//					 Log.i(TAG, EntityUtils.toString(hr.getEntity()).get);
					 
				} catch (MalformedURLException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				} catch (Exception e) {
					// TODO: handle exception
					e.printStackTrace();
				}

			}
		}).start();
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.activity_main, menu);
		return true;
	}

}
当然不要忘记打开网络权限。。。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值