HTTP 常用get,post两种请求方式
请求头 | 说明 |
---|---|
GET | 请求指定的页面信息,并返回实体主体 |
POST | 向指定资源提交数据进行处理请求 |
OPTIONS | 返回服务器针对特定资源所支持的HTTP请求方法,也可以领用weeb服务器发送“*”的请求来测试服务 |
HEAD | 请求指定的页面信息,并返回头部信息 |
PUT | 向指定资源位置上传其最新内容 |
DELETE | 请求服务器删除Request-URL所标识的资源 |
TRACE | 回显服务器收到的请求,主要用户测试或诊断 |
CONNECT | HTTP/1.1中预留给能够将连接改为管道方式的代理服务器 |
GET 和 POST 区别
GET
- 可以在地址栏中看到参数,因此不安全
- GET方法有大小限制,请求字符串中最多有1024个字符
- GET请求能被缓存
- GET请求回保存在浏览器的浏览记录中
- 可以添加为书签
- 编码类型为 application/x-www-form-urlencoded
- 只允许ASCII字符类型,不能用二进制流
- GET 获取数据
POST
- 向页面发送请求参数
- 参数不在地址栏中,因此相对安全
- 支持二进制流的
- post传输的数据量较大,可以达到2M,
- post 主要是向服务器传数据。
http请求
- 请求行 包含请求方式(get/post), 请求资源(/project/login.html?u=a&p=1),协议版本(1.0连接获得一个资源后就断开,1.1连接后多个资源吧,并保持连接)
- 请求头 客户端发送给服务器的一些信息,使用键值对表示,常见的请求头有:
请求头 | 说明 |
---|---|
Referer | 告诉服务器当前请求来自何处,如果是直接访问就不会有 |
If-Modified-Since | 告诉服务器本地缓存的最后变更时间 |
CooKie | 存放浏览器缓存的cookie信息 |
User-Agent | 告诉服务器浏览器和操作系统信息 |
Connection | 连接状态。Keep-Alive 连接中,close已关闭 |
Host | 请求的服务器主机名 |
Content-Length | 请求体的长度 |
Content-Type | 如果是post请求会有这个头application/x-www-form-urlencoded 表示请求体内容使用url编码 |
Accept | 浏览器支持的MIME类型,文件类型 |
Accept-Encoding | 浏览器支持的数据压缩格式,如GZIP压缩 |
Accept-Language | 浏览器支持的语言 |
- 请求体: 用户发送给服务器的信息, 如:user=a&password=123
http响应
-
响应行 包含http协议, 状态码,
| 状态码 | 说明 |
| ------- | -------- |
| 200 | 请求成功 |
| 302 | 请求重定向 |
| 304 | 请求资源没有改变,访问本地缓存 |
| 404 | 请求资源不存在,可能是路径错误,也可能是服务器资源已删除 |
| 500 | 服务器内部错误 | -
响应头 服务器信息,已键值对形式返回
响应头 | 说明 |
---|---|
Location | 指定响应的路径,需要配合状态码302使用,完成跳转 |
Content-Type | 响应正文的类型 MIME类型 |
Content-Disposition | 告知浏览器以下载方式解析正文 |
Set-Cookie | 服务器向浏览器写入cookie |
Content-Encoding | 服务器使用的压缩格式 |
Content-Length | 响应文的长度 |
Refresh | 定时刷新 |
Server | 服务器名称,默认值:Apache-Coyote/1.1 可以通过conf/server.xml修改 |
Last-Modified | 服务器通知浏览器文件的最后修改时间 |
- 响应体 服务器返回给客户端的正文。 浏览器加载到内存进行解析渲染。
网友评论