No2.7 前端面试题 1. token 2. 浏览器页面渲染的过程 3. SVG格式 4. 精灵图和base64

2023-11-15

1. token

  1. 什么是token
  • token是验证身份的令牌,一般是用户通过账号密码登录后,服务端把这些凭证通过加密等一系列操作后得到的字符串
  1. token都存在哪里,有什么区别
  • 存localstorage里,后期每次请求接口时都需要把它当做字段传给后台,容易被XSS攻击,但可以做相应措施,利大于弊
  • 存sessionstorage里
  • 存cookie里,会自动发送,但不能跨域,会有CSRF攻击
  1. token的登录流程
    1. 客户端通过账号密码请求登录
    1. 服务端收到请求后去验证账号密码
    1. 验证成功后,服务端签发一个token,并发送给客户端
    1. 客户端收到token后保存在cookie或localstorage里
    1. 客户端每次向服务端发送请求资源的时候,都需要携带这个token
    1. 服务端收到请求,然后去验证接收到的token,验证成功后才会返回客户端请求的数据
  1. JWT
    在这里插入图片描述

2. 浏览器页面渲染的过程

  1. DNS解析
  2. 建立TCP连接
  3. 发送HTTP请求
  4. 渲染页面
    1. 浏览器获取HTML和CSS资源
    1. 把HTML解析成DOM树(一一对应,包括head和隐藏元素),把CSS解析成CSSOM
    1. 把DOM和CSSOM合并为渲染树(不包括head和隐藏元素)
    1. 布局绘制
  1. 断开TCP连接

3. SVG格式

  1. 什么是SVG格式
  • 基于XML语法的图像格式,可缩放矢量图,本质是文本文件,体积小,无论放大多少倍都不会失贞
  1. SVG作用
  • 可以通过<svg></svg>直接插入到页面中,称为DOM一部分,然后用css或js操作
  • 可作为文件被引用<img scr='pic.svg'/>
  • 可转为base64引入页面

4. 精灵图和base64

  1. sprite(精灵图):把多个小图标合成一张大图片
  2. 精灵图优缺点
  • 优点:减少了http请求的次数,提升了性能
  • 缺点:维护比较差,牵一发而动全身
  1. base46
  • 传输8bit字节代码的编码方式,把原本二进制的形式转换为64个字附的单位,最后组成字符串
  • 优点: base64和HTML css一起下载到浏览器中,减少请求和跨域问题
  • 缺点: 低版本不支持;如果base64体积比原图大,不利于css的加载
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

No2.7 前端面试题 1. token 2. 浏览器页面渲染的过程 3. SVG格式 4. 精灵图和base64 的相关文章

随机推荐

  • C语言中关键字一次说清楚!!!

    目录 一 static 1 作用 2 一些例子帮助大家更深刻的理解static的几个作用 1 修饰局部变量 2 修饰全局变量和函数 二 const 1 作用 使得变量不允许被修改 提高代码的健壮性 2 本质 给编译器看的 在编译阶段起作用
  • golang 中strconv包用法

    https blog csdn net chenbaoke article details 40318357
  • .netcore windows app启动webserver

    创建controller using Microsoft AspNetCore Mvc using Microsoft Extensions Logging using System using System Collections Gen
  • 判断input输入框的值,用到input事件,blur事件,focus事件

    需求 当输入框有字或者正在输入时 右边的圆形取消按钮才出现 否则不出现
  • 网络h

    注 所有标题带h的博客不保证准确性和正确性 写这篇博客原因是因为网络知识学了又忘 忘又学 翻来覆去 所以做个笔记 正如上文注明 此篇博客所写内容不够准确和专业 甚至不正确 只是为了便于理解记忆 概念 以太网 ethernet 双绞线 同轴线
  • Tkinter中字体大小与部件大小的关系

    我是小鱼 今天是2022年2月10日 之前用python在做扫雷游戏时 发现总是拿不准部件大小与字体之间的关系 为此 当时还特地写了一篇BLOG Tkinter中的标签 Lable 与按钮 Button 的大小问题 扫雷写完后我有时间慢慢回
  • Centos下yum安装nginx本地仓库无nginx源解决方案

    一 问题描述 在CentOS下使用yum install nginx y 命令时 出现如下错误 root docker 05 yum install nginx y 已加载插件 fastestmirror Loading mirror sp
  • Hadoop Hbase 升级

    Hadoop HDFS 与Hbase升级笔记 由于之前使用了hadoop1 0 2 hbase 使用的是hbase 0 92 1 但是一次事故导致元数据丢失 且修复元数据的类本身有BUG 所以摆在眼前的只有两条路 1 修改hbase源码重新
  • CNI Plugin 介绍

    CNI 插件包括两种类型 CNI Plugin 和 IPAM IP Address Management Plugin CNI Plugin 负责为容器配置网络资源 IPAM Plugin 负责对容器的 IP 地址进行分配和管理 IPAM
  • Mac 下配置 Python3 和 Selenium3 环境

    Selenium 是一套 Web 测试框架 Selenium2 中新增加了 Webdriver 可以用了测试 UI 层 控制浏览器执行爬虫等操作 而 chromedriver 是 Selenium 控制浏览的必要驱动 一 安装 seleni
  • CCP协议

    CCP协议 2021 11 12 标定流程 将标定数据保存在Flash中 在程序初始化过程中 标定数据映射至RAM当中 程序从RAM中调取数据 标定过程开始时 在上位机中建立Flash存储区镜像 并保存至HEX文件 标定过程中 通过DNLO
  • cookie中文乱码问题

    下面是写入cookie的代码 csharp view plain copy Cookie nameCookie new Cookie name 张三 nameCookie setMaxAge 60 60 24 30 response add
  • 多普勒超声波流量计工作原理及优缺点

    多普勒超声波流量计是是利用声波在流体中传播的多普勒效应 通过测定流体中运动粒子散射声波的多普勒频移 即可得到流体的速度 结合内置压力式水位计 利用速度面积法 即可测量液体的流量 适合于明渠 河道及难以建造标准断面的流速流量测量以及于各种满管
  • 河道堤防GNSS位移监测系统

    一 方案背景 我国河系众多 海岸线漫长 在江边 河边 海边修筑修筑着几万公里的提防设施保卫着沿江 沿海居民的生命安全 也保卫着经济发展的累累硕果 近年来 因台风暴雨造成河道堤坝决堤 产生的经济损失越来越大 各对方对防洪堤 海堤的安全检查要求
  • 【数据可视化】利用 Flourish 制作动态排名条形图(无需代码,超简单)

    利用 Flourish 制作动态排名条形图 一 Flourish 介绍 数据可视化不仅是一项技术 也是一门艺术 当然 数据可视化的工具也非常多 仅 Python 就有 matplotlib plotly seaborn bokeh 等多种可
  • ubuntu16.04,如何修改网卡名称为eth0?(转)

    一开始没有注意 输入ifconfig显示的是 ens33 lo 觉得没有影响 就是一个名字的事情 但是百度以后发下 强迫症 具体看知乎大佬的连接 https www zhihu com question 45796677 感谢 流沙 大佬
  • labuladong 公众号的使用方法

    先给大家说句抱歉 前段时间 labuladong 有些事情在忙 所以更新频率比较慢 以后就恢复正常了 自开号以来 labuladong 的算法文章开了 靠套路刷题 的先河 一直被模仿 从未被超越 GitHub 开源 fucking algo
  • Maven 安装和使用详解详解(windows 环境)

    目录 1 maven 安装步骤 1 从 Apache 官网下载 maven 压缩包 2 解压 maven 压缩包 即可使用 3 配置 maven 环境变量 方便全局使用 3 检测是否安装配置成功 2 Maven 使用详解 1 修改 sett
  • IntelliJ IDEA无法运行新建的java类,灰色运行标志【终于找到!!】

    问题 创建新类 但是就是不能运行 运行的按钮都是灰色的 只有下面默认的自带的main函数能够运行 鼠标右键找不到运行函数类似图二 但是这个错误首先请确保自己的JDK没有问题 如图 鼠标右键也找不到运行标志 结果发现 从c 过来的编译习惯 总
  • No2.7 前端面试题 1. token 2. 浏览器页面渲染的过程 3. SVG格式 4. 精灵图和base64

    1 token 什么是token token是验证身份的令牌 一般是用户通过账号密码登录后 服务端把这些凭证通过加密等一系列操作后得到的字符串 token都存在哪里 有什么区别 存localstorage里 后期每次请求接口时都需要把它当做