一、Http状态码

状态码分类

  • 100 ~ 199 信息提示
  • 200 ~ 299 成功
  • 300 ~ 399 重定向
  • 400 ~ 499 客户端错误
  • 500 ~ 599 服务端错误

常见状态码

  • 200 OK
  • 401 Unauthorized
  • 404 Not Found
  • 500 Internal Server Error

从2xx,3xx,4xx,5xx分别举例出常见的code,面试官会问301和302的区别,以及500/503/504分别在哪些场景出现。

二、Http网络请求的基本优化

  • 带宽
  • 延迟
    • 服务器阻塞:服务器会因为一些原因阻塞请求。例如服务器只支持4个连接,超出的连接会被阻塞。
    • DNS查询:客户端需要知道目标服务器的IP,将域名解析为IP。
    • 建立连接:HTTP基于TCP协议,如果客户端每次跟同一个服务端通信都需要经历三次握手,连接无法高可用,会带来更大延迟。

三、Http1.0和Http1.1的区别

缓存处理

带宽优化及网络连接的使用

错误通知的管理

Host头处理

长连接

四、Http与Https的区别

参考文档

[1]: HTTP1.0、HTTP1.1 和 HTTP2.0 的区别
[2]: 做支付遇到的HttpClient大坑
[3]: 字节跳动、腾讯后台开发面经分享(2019.5)
[4]: 喵星人教你 HTTP 状态码
[5]: 最近学习了 Http 连接池

05-26 14:40