Android网络通信 Get方法使用

简介: 在使用之前,要确认通信环境已经配好了,HttpClient所需要的包也已经导入了,具体的可以见我前一篇博客 在使用HttpClient的时候,可以使用的方法包括 Get方法、Post方法、Put方法、Delete方法等,这些都是HttpClient.jar给我做好了的,我们使用的时候只需要调用就可以了。 首先,从Get方法的使用开始讲起。 Get方法,顾名思义,是从网络获取数据,在使

在使用之前,要确认通信环境已经配好了,HttpClient所需要的包也已经导入了,具体的可以见我前一篇博客

在使用HttpClient的时候,可以使用的方法包括 Get方法、Post方法、Put方法、Delete方法等,这些都是HttpClient.jar给我做好了的,我们使用的时候只需要调用就可以了。

首先,从Get方法的使用开始讲起。

Get方法,顾名思义,是从网络获取数据,在使用上面是最简单的一个方法。下面看一个简单的Get方法的例子:

// get方法
	public static String getDataFromServerGet(String path)
	{
		String result = "fail";

		try
		{
			String url = path;
			// Get的URL
			HttpGet httpget = new HttpGet(url);
			//httpget.addHeader("Accept", "application/json");
			DefaultHttpClient client = new DefaultHttpClient();
			// 发送Post,并返回一个HttpResponse对象
			HttpResponse response = client.execute(httpget);
			// 如果状态码为200,就是正常返回
			if (response.getStatusLine().getStatusCode() == 200)
			{
				Log.i(TAG, "正常返回数据");
				// 得到返回的字符串
				result = EntityUtils.toString(response.getEntity());
			}
		} catch (IOException e)
		{
			Log.i(TAG, "this is IOException");
		} catch (ParseException e)
		{
			Log.i(TAG, "this is ParseException");
		} catch (Exception e)
		{
			Log.i(TAG, "this is Exception");
		}
		return result;
	}

上述代码可以直接加在程序里,供调用。

调用可以采用如下的方式:

new Thread()
{
@Override
public void run()
{
        //地址,可以换成www.baidu.com 之类的,就不做广告了
        String url = "http://my.csdn.net/leilba";
	String result = getDataFromServerGet(url);
	//下面的是打印出来,有时候打印会报错(可能是太长了或者里面有非法字符?),要注意一下,如果Log出错的话,可以用EditText控件输出查看结果。
	Log.i("obo","result:"+result);

}

}.start();

要注意的是,这个设置是用于接收纯文本数据的,也就是说,如果是要接收图片或者是文件的话,这样是不够的。



目录
相关文章
|
7天前
|
存储 缓存 定位技术
如果遇到网络延迟问题,有哪些方法可以快速解决以保证视频源同步?
如果遇到网络延迟问题,有哪些方法可以快速解决以保证视频源同步?
|
12天前
|
机器学习/深度学习
【机器学习】面试题:LSTM长短期记忆网络的理解?LSTM是怎么解决梯度消失的问题的?还有哪些其它的解决梯度消失或梯度爆炸的方法?
长短时记忆网络(LSTM)的基本概念、解决梯度消失问题的机制,以及介绍了包括梯度裁剪、改变激活函数、残差结构和Batch Normalization在内的其他方法来解决梯度消失或梯度爆炸问题。
26 2
|
3天前
|
网络虚拟化 数据安全/隐私保护
手把手教网络工程师2种方法如何恢复交换机配置
手把手教网络工程师2种方法如何恢复交换机配置
|
4天前
|
安全 网络协议 网络安全
常见网络攻击方式及防御方法
网络安全威胁的不断演变和增长,网络攻击的种类和数量也在不断增加,攻防对抗实战演练在即,让我们一起了解一下常见网络攻击方式及防御方法。
5 0
|
4天前
|
机器学习/深度学习 自然语言处理 算法
基于卷积神经网络(CNN)的垃圾邮件过滤方法
传统的垃圾邮件过滤手段如规则匹配常因垃圾邮件的多变而失效。基于深度学习的方法,特别是卷积神经网络(CNN),能自动学习邮件中的复杂特征,有效识别垃圾邮件的新形态。CNN通过特征学习、处理复杂结构、良好的泛化能力和适应性,以及高效处理大数据的能力,显著提升了过滤精度。在文本分类任务中,CNN通过卷积层提取局部特征,池化层减少维度,全连接层进行分类,特别适合捕捉文本的局部模式和顺序信息,从而构建高效的垃圾邮件过滤系统。
21 0
|
1月前
|
Android开发
Android面试题之View的invalidate方法和postInvalidate方法有什么区别
本文探讨了Android自定义View中`invalidate()`和`postInvalidate()`的区别。`invalidate()`在UI线程中刷新View,而`postInvalidate()`用于非UI线程,通过消息机制切换到UI线程执行`invalidate()`。源码分析显示,`postInvalidate()`最终调用`ViewRootImpl`的`dispatchInvalidateDelayed`,通过Handler发送消息到UI线程执行刷新。
27 1
|
25天前
|
消息中间件 调度 Android开发
Android经典面试题之View的post方法和Handler的post方法有什么区别?
本文对比了Android开发中`View.post`与`Handler.post`的使用。`View.post`将任务加入视图关联的消息队列,在视图布局后执行,适合视图操作。`Handler.post`更通用,可调度至特定Handler的线程,不仅限于视图任务。选择方法取决于具体需求和上下文。
26 0
|
1月前
|
算法 Java 数据库连接
Java中优化网络通信的方法和工具
Java中优化网络通信的方法和工具
|
3月前
|
XML JSON Android开发
[Android]网络框架之Retrofit(kotlin)
[Android]网络框架之Retrofit(kotlin)
234 0
|
3月前
|
缓存 JSON Android开发
[Android]网络框架之OkHttp(详细)(kotlin)
[Android]网络框架之OkHttp(详细)(kotlin)
342 0