`
百合不是茶
  • 浏览: 345157 次
社区版块
存档分类
最新评论

android-async-http将json封装到body体中

阅读更多

url直接拼接地址会超过限制,所以在开发中我们一般是将请求的参数写到body体中,下面我使用的是android的http网络框架,在实现的过程中出现了很多问题 ,现在代码记录:

 

 

 

 

   final byte[] zipSendDateService = zipSendDate(SelectSendDate().getBytes()); //上送的字符
		content = httpClient.getUploadSendData();//请求的报文
             //http的post请求,调用下面的post请求
            httpClient.post(context, content, zipSendDateService, 
		"application/octet-stream",new AsyncHttpResponseHandler() {
	@Override//请求成功
		public void onSuccess(int statusCode,Header[] headers, byte[] responseBody)             {
            processSendUploadResult(new String(responseBody));}

	@Override //请求失败
	public void onFailure(int statusCode,Header[] headers, byte[] responseBody,
	   Throwable error) {
    }
});

 

post的方式将字符串写到body体中请求服务器

 

//获得上面方法的参数	
public RequestHandle post(Context context, String content,
			byte[] zipSendDateService, String contentType,
			ResponseHandlerInterface responseHandler) {
//字节转成字节输入流
		ByteArrayInputStream bis = new ByteArrayInputStream(zipSendDateService);
将流写到Entity中
		InputStreamEntity entity = new InputStreamEntity(bis,
				zipSendDateService.length);
		try {
//转码
			content = URLEncoder.encode(content, HTTP.UTF_8);
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
//获得地址并且拼接json到url后面
		String url = getRequestUrl()+"?JSON="
				+ content;

//请求服务器
		return httpClient.post(context, url, entity, contentType,
				responseHandler);
	}

 

 

 

服务器可以直接读取body中的字符串

 

 

0
0
分享到:
评论

相关推荐

    android-async-http 源码

    https://oss.sonatype.org/content/repositories/snapshots/com/loopj/android/android-async-http/ Maven URL: https://oss.sonatype.org/content/repositories/snapshots/ GroupId: com.loopj.android ArtifactId...

    android-async-http官方项目

    android-async-http官方项目:来自Github;...该项目中包含了多个版本的android-async-http.jar包,目前最新版本是:android-async-http-1.4.5.jar; 地址:原项目地址:https://github.com/loopj/android-async-http

    android-async-http-1.4.3最新jar包

    android的异步网络加载,方便使用,免去多余的代码

    android-async-http-1.4.9下载

    android-async-http 1.4.9版本,附带了其依赖的httpclient包

    android-async-http

    android-async-http开源框架可以是我们轻松的获取网络数据或者向服务器发送数据,使用起来也很简单,具体详细使用看官网:https://github.com/loopj/android-async-http

    android-async-http-1.4.5.jar

    最新异步网络请求android-async-http-1.4.5.jar

    android-async-http的jar包

    android.async.http.jar包 包含1.2.0 至 1.4.8 版本。

    Android-async-http-1.4.9.jar

    android-async-http-1.4.9.jar是一般使用Apache HTTP Client或者采用HttpURLConnect,但是直接使用这两个类库需要写大量的代码才能完成网络post和get请求,而使用android-async-http这个库可以大大的简化操作,它是...

    安卓网站交互JSONxmlWebserviceUPnP相关-android-async-http是Android上的一个异步基于回调的HTTP客户端开发包建立在Apache的HttpClient库上.zip

    android-async-http是Android上的一个异步、基于回调的HTTP客户端开发包,建立在Apache的HttpClient库上.zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。

    android-async-http-1.4.8.jar

    强大的网络请求库,主要特征如下: 处理异步Http请求,并通过匿名内部类处理回调结果 Http请求均位于非UI线程,不会阻塞UI操作 通过线程池处理并发请求 ...响应结果自动打包JSON格式 自动处理连接断开时请求重连

    android-async-http-1.4.11.zip

    1)包里包含android-async-http-1.4.11.jar 和 httpclient-4.5.8.jar两个文件 2)强大的网络请求库,主要特征如下: 处理异步Http请求,并通过匿名内部类处理回调结果 Http请求均位于非UI线程,不会阻塞UI操作 通过...

    android-async-http-1.4.6.jar

    比较好用的安卓异步下载包,android-async-http-1.4.6.jar

    android-async-http.jar

    android-async-http-1.4.8.jar提供下载学习和使用,其中还有别的版本可以使用

    android-async-http-1.4.6

    android-async-http是专门针对Android在Apache的HttpClient基础上构建的异步http连接。所有的请求全在UI(主)线程之外执行,而callback使用了Android的Handler发送消息机制在创建它的线程中执行。

    android-async-http-1.4.9

    使用android-async-http这个库可以大大的简化操作,它是基于Apache’s HttpClient ,所有的请求都是独立在UI主线程之外,通过回调方法处理请求结果,采用android Handler message 机制传递信息

    android-async-http-master

    android-async-http开源框架可以是我们轻松的获取网络数据或者向服务器发送数据,使用起来也很简单

    android-async-http-master.zip

    2017最新版本android-async-http-master Android异步框架,并附有简单的导入方法以及报错处理

    android-async-http-1.4.4

    使用android-async-http这个库可以大大的简化操作,它是基于Apache’s HttpClient ,所有的请求都是独立在UI主线程之外,通过回调方法处理请求结果,采用android Handler message 机制传递信息

    android-async-http访问webservice

    网上的ksoap2访问webservice得自己写线程,线程自己控制有点问题,所以自己组装一下开源android-async-http,可以访问webservice.使用时候需要一定的Android开发经验才能使用

    android-async-http progress-wheel测试程序

    android-async-http 和圆形滚动条开源项目的测试程序。

Global site tag (gtag.js) - Google Analytics