HTTP面试题总结(随缘更新)

72 阅读2分钟

平时刷面试题自己总结复盘

1.localhost 与 127.0.0.1 有什么区别

  • localhost 可以更改后指向其它地址。
  • 127.0.0.1 是约定的本机 IP。 类似互联网中域名与服务器 IP 的关系。
  • 如果在浏览器访问时,当前页面的 location.hostname(host) 不同,配置代理的时候要注意

2.简述HTTPS和HTTP的区别

  • 1.https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
  • 2.http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
  • 3.http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
  • 4.http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

3.http 常见的状态码有哪些

  • 1XX 表示消息

  • 2XX 表示成功

  • 3XX 表示重定向

  • 4XX 表示客户端错误

  • 5XX 表示服务端错误

  • 200 成功

  • 301 永久重定向

  • 302 临时重定向

  • 304 自上次请求,未修改的文件

  • 400 错误的请求

  • 401 未被授权,需要身份验证,例如 token 信息等等

  • 403 请求被拒绝

  • 404 资源缺失,接口不存在,或请求的文件不存在等等

  • 500 服务器端的未知错误

  • 502 网关错误

  • 503 服务暂时无法使用

4.强缓存和协商缓存

  • 强缓存:浏览器直接从本地缓存中获取数据,不与服务器进行交互
  • 协商缓存:浏览器发送请求到服务器,服务器判断是否可使用本地缓存 再次请求时,需要向服务器校验新鲜度,如果资源是新鲜的,返回 304,从浏览器获取资源

5.浏览器地址栏输入一个网址到页面渲染发生了什么

  • 1.浏览器会判断是不是一个合法的网址 不合法的会进入到搜索 合法的网址就会去请求
  • 2.请求之后会去找网址的域名 浏览器通过DNS解析找到对应的服务器IP地址 浏览器cache查找是否请求过有缓存
  • 3.浏览器与服务器连接 三次握手
    • 浏览器告诉服务器 我要请求了
    • 服务器告诉浏览器 我准备好了可以请求了
    • 浏览器告诉服务器 行 那我请求了
  • 4.发生http请求 等待服务器响应返回数据
  • 5.下载html 解析html 渲染页面