在上一篇博客《Volley框架(二):使用Volley加载图片》中,我们已经将Volley加载图片的功能说完了,这篇博客我们来说一下使用Volley提交表单数据。
要提交表单数据,我们需要解决的第一个问题就是表单数据的格式是什么样子的,获取表单数据提交格式,我们可以去其他网站上抓取数据包,也可以用HTML自己写一个表单,提交一下(即使指向一个错误链接也行),然后把提交的数据抓取到就行了。
下面是我自己写的一个简单的表单,只有两个输入框,然后随意指定一个地址提交数据然后抓取到的提交的数据:
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding:gzip, deflate
Accept-Language:zh-CN,zh;q=0.8
Content-Length:256
Content-Type:multipart/form-data; boundary=----WebKitFormBoundarykR96Kta4gvMACHfq
Host:www.aaa.com
Origin:null
Proxy-Connection:keep-alive
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36
------WebKitFormBoundarykR96Kta4gvMACHfq
Content-Disposition: form-data; name="login_username"
abcde
------WebKitFormBoundarykR96Kta4gvMACHfq
Content-Disposition: form-data; name="login_pswd"
2332525
------WebKitFormBoundarykR96Kta4gvMACHfq--
看到上面的数据包,我们不需要全部分析,我们主要关心的是数据如何封装,因为http请求头,在网络请求中已经为我们封装好了;可以看到这里总共是提交了两条数据,每一条数据的格式都是一样的,所以我们只需要分析一条数据即可,这里拿第二条数据来说,因为在所有的数据之后还有一个结尾的标志。
第二条数据:
------WebKitFormBoundarykR96Kta4gvMACHfq
Content-Disposition: form-data; name&