HTTP协议以ASCII码传输,建立在TCP/IP协议之上。规范把HTTP协议请求分为三部分:状态行、请求头、消息主体
类似于:
<method> <request-URL> <version>
<headers><entity-body>
HTTP定义了与服务器交互的不同方法,最基本的有四种:GET、POST、PUT、DELETE,分别对应于针对这个资源的查、增、改、删操作。
- GET请求可提交的数据量受到URL长度的限制,HTTP协议规范没有对URL长度进行限制,而是浏览器及服务器对它的限制
- 理论上,POST请求没有大小限制,出于安全考虑,服务器软件在实现时可能会做一定限制
HTTP协议规定POST请求提交的数据必须在body部分中,POST提交数据方案,包含Content-Type和消息主体编码方式两部分
- application/x-www-form-urlencoded
最常见的post提交数据方式,浏览器的表单form,如果不设置enctype属性,那么最终就是application/x-www-form-urlencoded方式提交。在body中的内容,和在GET请求里的内容相同 - multipart/form-data
一般用于文件上传
现阶段这两种方式是浏览器原生支持的。
HTTP响应报文与请求报文类似,也分为三个部分:状态行,响应头、响应主体
网友评论