网络相关面试题

get和post有什么区别 ?

  • 1)get参数通过url传递,post放在request body中;

  • 2)get请求在url中传递的参数是有长度限制的,而post没有;

  • 3)get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息;

  • 4)get请求参数会被完整保留在浏览历史记录里,而post中的参数不会被保留;

  • 5)GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同,GET产生一个TCP数据包;POST产生两个TCP数据包:

    • 对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
    • 而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

cookie和session的区别?
Cookie 和 Session都是⽤来跟踪浏览器⽤户身份的会话⽅式,但是两者的应⽤场景不太⼀样。
Cookie ⼀般⽤来保存⽤户信息;
Session 的主要作⽤就是通过服务端记录⽤户的状态。

  • Cookie 数据保存在客户端(浏览器端),Session 数据保存在服务器端。
  • Cookie 存储在客户端中,⽽Session存储在服务器上,相对来说 Session 安全性更⾼。如果要在Cookie中存储⼀些敏感信息,不要直接写⼊ Cookie 中,最好能将 Cookie 信息加密然后使⽤到的时候再去服务器端解密。

HTTP状态码
在这里插入图片描述
DNS 查询

  • 检查浏览器的 DNS 缓存,检查本地 hosts 文件的缓存,如果没有会向本地 DNS 服务器发送请求。
  • 主机向本地 DNS 服务器发起请求是递归查询,如果找到则返回,否则会向根 DNS 查询。
  • 根 DNS 查询是迭代查询,没有域名和 ip 的对应关系,而是告知可以查询的域名服务器地址。
  • 本地 DNS 向得到的域名服务器发出请求,收到一个域名和 ip 关系,把结果返回给用户,并把结果保存到缓存中。
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页