下面阐述一下Http的请求消息,Http客户端发送Http请求给服务器,发送的表单信息格式如下:
- A Request-line 请求行
- Zero or more header (General|Request|Entity) fields followed by CRLF
- An empty line (i.e., a line with nothing preceding the CRLF) indicating the end of the header fields
- Optionally a message-body
请求行 Request-Line
请求行以方法令牌开始,后跟Request-URI和协议版本,并以CRLF结尾。 元素由空格SP字符分隔。
Request-Line = Method SP Request-URI SP HTTP-Version CRLF
下面我们对请求行的每个参数进行分析一下。
请求方法 Method
请求方法指示对由给定的Request-URI标识的资源执行的方法。 该方法区分大小写,应始终以大写形式提及。 下表列出了HTTP / 1.1中支持的所有方法。
序号 | 方法及描述 |
---|---|
1 | GET
GET方法用于使用给定的URI从给定的服务器检索获取信息。 使用GET的请求应当只用于获取数据,而不对数据产生其他影响。 |
2 | HEAD
与GET相同,但它只传输状态行和标题部分。 |
3 | POST
POST请求用于使用HTML表单将数据发送到服务器,例如客户信息,文件上传等。 |
4 | PUT
向指定资源位置上传其最新内容,例如:客户端对一个URI发送一个消息,服务器在这个URI下如果已经有了一个消息,那么此刻服务器应该替换成客户端重新提交的,也由此保证了PUT的幂等性。如果服务器之前没有对应的消息,那么服务器就应该将客户端提交的放在这个URI上。
|
5 | DELETE
请求服务器删除指定的页面。 |
6 | CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。 |
7 | OPTIONS
描述目标资源的通信选项。允许客户端查看服务器的性能。 |
8 | TRACE
回显服务器收到的请求,主要用于测试或诊断。 |