首页 > 移动平台 > 详细

Android客户端多文件上传

时间:2016-05-07 11:04:57      阅读:228      评论:0      收藏:0      [点我收藏+]

在web开发中,多文件上传时是非常方便的,直接使用Http协议提交数据即可。格式如下:

   <FORM METHOD=POST ACTION="http://192.168.1.101:8083/upload/servlet/UploadServlet" enctype="multipart/form-data">
            <INPUT TYPE="text" NAME="name">
            <INPUT TYPE="text" NAME="id">
            <input type="file" name="imagefile"/>
            <input type="file" name="zip"/>
         </FORM>

但是在Android客户端中,如果文本和文件一起上传时就比较麻烦,需要对Http协议很熟悉才可以做到的。

一、HTTP协议

HTTP协议是一个很很复杂的过程,我们在做web开发时,底层其实都已经封装好了,可以使用即可,我们所需要做的就是对HTTP请求格式很熟悉。
HTTP协议分为请求方法URI协议/版本,请求头,请求体。
<span style="white-space:pre">	</span>GET/sample.jspHTTP/1.1                    //请求方法/请求路径/协议版本


<span style="white-space:pre">	</span>Accept:image/gif.image/jpeg,*/*          
<span style="white-space:pre">	</span>Accept-Language:zh-cn
<span style="white-space:pre">	</span>Connection:Keep-Alive
<span style="white-space:pre">	</span>Host:localhost
<span style="white-space:pre">	</span>User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
<span style="white-space:pre">	</span>Accept-Encoding:gzip,deflate


<span style="white-space:pre">	</span>username=jinqiao&password=1234
这是一个完整的HTTP请求。
请求的协议头主要包括以下一些内容:
技术分享
请求头和请求体中间有一个空格,这个空格表示请求头已经结束,下面的是请求体。
响应头:
技术分享
这即为整个的HTTP请求。

二、Android中的多文件上传

Android中使用HTTP GET或者POST方法提交数据在前文已经介绍过了。
代码在struts上传文件一文中已经贴出来了。

在代码中 ,我们需要自己动手完整的构造出整个HTTP请求的格式。
但有一个不同的地方;
首先是Content-Type:multipart/form-data;boundary=---------------------------7da2137580612;
因为表单类型为:multipart/form-data,上传文件使用的不在是HTTP协议,不在是name="--"的方式了,而是使用
分隔符
字段内容
分隔符
字段内容
比如:
请求头
---------------------------7da2137580612

Content-Disposition:form-data;name=“username”


zhuzg

---------------------------7da2137580612
Content-Disposition:form-data;name=“imagefilename=“123.jpg”
Content-Type:application/octet-stream

---------------------------7da2137580612----------- //结束标志


Android客户端多文件上传

原文:http://blog.csdn.net/zhegemingzihaonan/article/details/51334300

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!