iphone模拟城市刷金币post 为什么发...

7384人阅读
技术文档(204)
HTTP协议和应用(22)
首先说说一下http请求
http请求最长用的方法是 get 和 post 方法
get方法和post方法相比理解起来比较简单,get方法可以直接请求一个url,也可以url后面拼接上参数作为一个新的url地址进行请求。get方法后面的value要经过unicode编码。form的enctype属性默认为application/x-www-form-urlencoded。不能发送二进制文件。
post方法相对要复杂一些。首先post方法要设置key和value ,所有的key和value都会拼接成 key1=value1&key2=value2的样式的字符串,然后这个字符串转化为二进制放到 http请求的body中。当请求发送的时候,也就跟随body一起传给服务器。http请求Content-Type设置为:application/x-www-form-urlencoded。这里讲的只是简单的post请求,一般发送文件不会选择这种方式(从技术方面考虑也可以发送文件,就是把文件以 key 和 value的方式放入)。下面我们再讨论一下post发送二进制文件更加普遍的方法。
post发送文件首先网页中的form的enctype设置为multipart/form-data,然后浏览器会把表单中需要提交的项目分隔,并为每个部分加上Content-Disposition(form-data或者file),Content-Type(默认为text/plain),name(控件name)等信息,并加上分割符(boundary)。&
如果有以下form,并选择了file1.txt上传&
//作者:禚来强 &***: &email: &QQ: &QQ讨论群:
//原问地址: &http://blog.csdn.net/diyagoanyhacker/article/details/6685398& 转贴请保留
&form action=&/cgi/handle&&
& & & &enctype=&multipart/form-data&&
& & & &method=&post&&&
& &&input type=&text& name=&submit-name& value=&chmod777&&&br /&&
& &What files are you sending? &input type=&file& name=&files&&&br /&&
则有如下body:&
Content-Type: multipart/form- boundary=AaB03x&
& &--AaB03x&
& &Content-Disposition: form- name=&submit-name&&
& &chmod777&
& &--AaB03x&
& &Content-Disposition: form- name=&files&; filename=&file1.txt&&
& &Content-Type: text/plain&
& &... contents of file1.txt ...&
& &--AaB03x--&
以上重点讲解的post请求的两种方式。如果还是不明白可以和我一起讨论。我的QQ: &QQ讨论群:。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1056168次
积分:13418
积分:13418
排名:第728名
原创:240篇
转载:69篇
评论:188条
我们是一群热爱移动开发的人,如果你也是,就加入我们。 开发技术群:我的联系方式: ***:
(1)(3)(1)(1)(1)(1)(1)(1)(1)(1)(3)(3)(1)(3)(1)(4)(4)(3)(3)(9)(12)(17)(6)(11)(10)(34)(50)(64)(30)(22)(2)(3)(1)(2)(3)

参考资料

 

随机推荐