欢迎来到天天文库
浏览记录
ID:21546575
大小:174.00 KB
页数:14页
时间:2018-10-22
《http请求与服务器返回解析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、android采用post方式获取服务器数据地址:http://www.yoyong.com/archives/464Addacomment 1,597viewsNovember11th,2011 Charlieandroid, http, json androidhttppost请求, android解析json总结android采用http请求访问网络并获取数据的步骤:1.发送http请求,并传递相应的参数;2.获取http返回的状态,根据返回的状态,如404错误,500错误,连接超时,请求异常等,并在界面提示相关状态;3.web服务器端封装数据并返回一定格式的数据对象
2、,例如封装json对象;4.http状态返回正常,取出正确的参数并解析,如解析json对象;5.解析服务器端返回的数据后显示在android相应的控件或存储本地数据,提示操作完成等。因为习惯使用以上的5个步骤,于是写了一个相对完善的一个处理方法。以下主要是使用post方式获取数据并解析封装的过程,封装json主要有两种封装方法:一种是单个json封装,另一种是带数组的json封装;解析json对应相应的方法。服务器端封装数据的语言采用php封装。get方式请求的方法过程类似。1.发送服务器的httppost请求方法为了使编写的httppost请求具有高度的可重用性,对于传递
3、参数采用类似键值对的数组方式分别传递参数以及参数的值,String[]key,String[]value就是这样的一个类似键值对的传参方式。key是传递的参数,value是参数对应的值,url则是访问的地址。HttpPostRequest.java源码:viewplaincopytoclipboardprint?1.package com.httppost.main; 2. 3.import java.io.IOException; 4.import java.io.InterruptedIOException; 5.import java.io.Unsupport
4、edEncodingException; 6.import java.util.ArrayList; 7.import java.util.List; 8. 9.import org.apache.http.HttpEntity; 10.import org.apache.http.HttpResponse; 11.import org.apache.http.client.ClientProtocolException; 12.import org.apache.http.client.entity.UrlEncodedFormEntity; 13.imp
5、ort org.apache.http.client.methods.HttpPost; 14.import org.apache.http.conn.ConnectTimeoutException; 1.import org.apache.http.impl.client.DefaultHttpClient; 2.import org.apache.http.message.BasicNameValuePair; 3.import org.apache.http.params.HttpConnectionParams; 4.import org.apache.h
6、ttp.protocol.HTTP; 5.import org.apache.http.util.EntityUtils; 6. 7.public class HttpPostRequest { 8. 9.private String webContext; 10.//返回请求内容 11.public String getWebContext() { 12.return webContext; 13.} 14.public void setWebContext(String webContext) { 15.this.webContext = webC
7、ontext; 16.} 17.//该函数返回服务器访问的各种状态,并通过webContext传递获取的文本值 18./** 19.* 参数说明 20.* url 访问的网络地址 21.* key 传递参数的名称 22.* value 传递参数的值 23.* key 与value数组长度对应,即一对键值对,这样可以不限制参数传递的个数 24.* */ 25.public int requestHttp(String url,String []key,String []value) { 26.// TODO
此文档下载收益归作者所有