03 http相关面试题

1.http常见的状态码有那些?

2.http常见的header有那些?

3.什么是Restful Api?

4.描述一下http的缓存机制?

一.状态码分类

1xx 服务端请求成功

2xx 客户端请求成功 如200

3xx 临时重定向 如302 ,301永久重定向(如老域名不用了用新的域名,不会访问老域名)都是配合location,304资源未被修改(服务端告诉本地资源还有效)

4xx 客户端错误 如404资源未找到 ,403没有权限

5xx 服务端错误 如500,504网关超时

302 案例

 

二 http常见的header值

1.Request Headers(请求头)

Accept 浏览器可接收的数据格式

Accept-Encoding 浏览器可接收的压缩算法 如gzip 为了资源更小传输更快

Accept-Language 浏览器可接收的语言 zh-CN 中文

Connection:keep-alive 一次TCP连接重复使用

cookie 浏览器自带

host 域名

User-Agent 简称UA 浏览器信息及操作系统信息

Content-Type: application/json 发送请求的而数据格式(一般post请求才会发送一些数据,get请求一般是获取数据)

2.Response Headers(响应头,服务端返回的信息)

Content-Type: application/json 返回的数据格式

Content-Length: 154 返回数据的大小,多少字节

Content-Encoding 返回数据的压缩算法 如gzip

set-cookie

可自定义header :有些权限接口需要这样做认证

3.缓存相关的headers

1.强制缓存字段

cache-control:max-age强制缓存时间s no-cache不强制缓存 no-store不做缓存 private允许浏览器手机做缓存

Expires已被cache-control代替,cache-control优先级高

图解:

2.协商缓存

last-modified 资源最后的修改时间s

etag 资源的唯一标识 , etag优先高并且更精确

图解:

三 完整http缓存的机制

 

 四 restful api是一种API设计方法

传统api设计:把每个url 当作一个功能(get获取资源,post新增资源或删除资源)

restful api设计:把每个url 当作一个资源(get获取资源,post新增资源,puth更新资源,delete删除资源)

如何设计restful api(尽量不要url加参数?pageIndex=2,多使用methods)

传统api url: /api/list?pageIndex=2(看起来像函数,把url打成一个功能)

restful api url: /api/list/2(唯一资源)看详情页 /api/item/2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值