
- GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如 EditBook?name=test1 &id=123456. POST方法是把提交的数据放在HTTP包的请求体中。
- GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制。
- GET与POST请求在服务器端获取请求数据方式不同。
'''
GET请求
# 请求首行
GET / HTTP/1.1
# get请求后面的参数
GET /?name=lqz&age=18 HTTP/1.1
# 请求头
Host: 127.0.0.1:8008
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: csrftoken=7xx6BxQDJ6KB0PM7qS8uTA892ACtooNbnnF4LDwlYk1Y7S7nTS81FBqwruizHsxF
'
# 请求体(get请求,请求体为空)
'''
'''
POST请求
# 请求首行
POST /?name=lqz&age=18 HTTP/1.1
# 请求头
Host: 127.0.0.1:8008
Connection: keep-alive
Content-Length: 21
Cache-Control: max-age=0
Origin: http://127.0.0.1:8008
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Referer: http://127.0.0.1:8008/?name=lqz&age=18
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Cookie: csrftoken=7xx6BxQDJ6KB0PM7qS8uTA892ACtooNbnnF4LDwlYk1Y7S7nTS81FBqwruizHsxF
# 请求体
name=lqz&password=123'
'''

状态码的值是当客户端向服务器端发送请求时,返回的请求结果。借助状态码,用户可以知道服务器端处理请求的各种状态。状态码如200 OK。响应分别有以下5大类。
| 状态码 | 信息 |
|---|---|
| 10X | 服务端已经接收你的数据,正在处理,你可以继续提交数据 |
| 20X | 请求成功 |
| 30X | 重定向 |
| 40X | 请求错误(404:请求资源不存在) |
| 50X | 内部服务器错误 |