HTTP协议面试

http1.0所做的优化

  • 带宽:现阶段已经解决
  • 延迟:1.浏览器阻塞:浏览器对同一个域名,同时只能有4个连接、
  • 延迟:2.DNS查询:浏览器需要知道目标服务器的 IP才能建立连接
  • 延迟:建立链接:三次握手

http1.0/http1.1的区别

1缓存处理不同。 1.0只是用一个头文件的缓存策略,1.1引入了更多
2带宽优化及网络连接的使用(1.0存在浪费带宽,不支持断点续传功能。1.1允许只请求资源的部分)
3Host头处理 (1.0中每台服务器绑定唯一的IP地址。1.1请求消息和响应消息都支持Host头表改进)
4长连接(最大的区别)
http1.0/http1.1存在的问题

  1. HTTP1.X在传输数据时,每次都需要重新建立连接,无疑增加了大量的延迟时间(主要存在于1.0中,1.1可以解决)
  2. HTTP1.x在传输数据时,所有传输的内容都是明文,客户端和服务端都无法验证对方的身份(可以使用https)
  3. HTTP1.x在使用时,header里携带的内容过大,在一定程度上增加了传输成本
  4. 虽然HTTP1.x支持了keep-alive,来弥补多次创建连接产生的延迟,但是keep-alive使用多了同样会给服务器带来大量的性能压力(比如请求一个文件)

get/post方法的区别

  1. 提交的数据
  2. 提交的数据大小是否有限制
  3. 取得安全的值Request.QuereString vs Request.Form
  4. 安全问题

cookie和session的区别
什么是cookie
cookie技术是客户端的解决方案,cookie就是有服务器给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息(在okhttp中设置cookie需要用到拦截器来完成)
什么是session
session是另一种记录客户状态的机制,不同的是cookie保存在客户端浏览器中,而session保存在服务器上,客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上

session:工作原理
1.创建session
2.在创建session的同时,服务器会为该session生成唯一的session id
3.在session被创建之后,就可以调用session相关的方法往session中添加内容
4. 当客户端再次发送请求的时候,会将这个session id带上,服务器接受到请求后就会依据session id找到相应的session

区别

  1. 存放位置不同
  2. 存放方式不同 (session能保存任何内容,cookie 字符串)
  3. 安全性不同,session更安全
  4. 有效期不同 ,cookie比较长,session如果设置为-1关闭浏览器后就会失去
  5. 对服务器压力不同

HTTPS

并不是一个单独的协议,是对工作在一加密连接(SSL/TLS)上常规HTTP协议。通过在TCP和HTTP之间加入TLS(Transport Layer Security)来加密。

SSL/TLS协议
SSL协议
传输速度会变慢。更耗资源。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值