1. http常见的状态码有哪些?
- 状态码分类
- 1** 服务端收到请求
- 2** 请求成功,如 200
- 3** 重定向,如302
- 4** 客户端错误,如 404
- 5** 服务端错误,如 500
- 常见状态码
- 200 成功
- 301 永久重定向(浏览器自动处理,每次直接访问location的新地址)
- 302 临时重定向(浏览器自动处理,每次先访问老地址,再重定位到location的新地址)
- 304 资源未被修改
- 404 资源未被找到
- 403 没有权限
- 500 服务器错误
- 504 网关超时
2. http中 Methods的改进
- 传统的 Methods
- get获取服务端的数据
- post向服务端提交数据
- 现在的 Methods
- get获取数据
- post新建数据
- patch/put 更新数据
- delete 删除数据
3. 什么是Restful API?
一种新的API设计方法
- 传统的API设计:
- 把每个url当做一个功能 **
- 如:/api/list?pageIndex=2
- Restful API设计:
- 把每个url当做一个唯一的资源 **
- 如:/api/list/2
4. http常见的header有哪些?
- 常见的Request Headers
- 【Accept】 浏览器可接收的数据格式
- 【Accept-Encoding】 浏览器可接收的压缩算法,如gzip
- 【Accept-Language】 浏览器可接收的语言,如zh-CN
- 【Connection:keep-alive】 一次TCP连接重复使用
- 【cookie】
- 【Host】 请求的域名
- 【User-Agent】 (UA) 浏览器信息
- 【Content-Type】 发送数据的格式(post),如application/json
- 常见的Response Headers
- 【Content-Type】 返回数据的格式,如application/json
- 【Content-length】 返回数据的大小,多少字节
- 【Content-Encoding】 返回数据的压缩算法,如gzip
- 【Set-Cookie】服务端改cookie
- 缓存相关header
- 【Cache-Control】 在Response Headers中,控制强制缓存的逻辑
- 【Expires】 在Response Headers中,设置缓存过期,已被Catch-Control代替
- 【Last-Modified】 在Response Headers中,标记此文件在服务器端最后被修改的时间,如:Last-Modified : Fri , 12 May 2006 18:53:33 GMT
- 【If-Modified-Since】 在Request Headers中,询问该时间之后文件是否有被修改过,如:If-Modified-Since : Fri , 12 May 2006 18:53:33 GMT
- 【Etag】 在Response Headers中,标示URL对象是否改变,如:ETag:"50b1c1d4f775c61:df3"
- 【If-None-Match】 在Request Headers中,ETag没改变,则返回状态304,然后不返回,如:If-None-Match: W / "50b1c1d4f775c61:df3"