教学课件(PPT)
本书源码
第1章浏览器插件发展背景概述(22min)
1.1引言
1.1.1互联网和浏览器的早期发展
1.1.2浏览器技术的关键发展
1.2浏览器插件的起源和发展历程
1.2.1使用插件自定义软件
1.2.2原生浏览器插件
1.2.3从浏览器附加组件到扩展
1.3浏览器扩展领域概览
1.3.1移动应用程序与浏览器扩展的比较
1.3.2浏览器扩展商店
1.3.3浏览器扩展的类型
1.4本章小结
第2章Chrome浏览器插件基础(26min)
2.1现代浏览器架构
2.1.1浏览器的核心组成
2.1.2功能分层
2.1.3多进程架构
2.2浏览器及插件模型
2.2.1浏览器模型
2.2.2浏览器的标签页
2.2.3浏览器插件模型
2.3插件的工作原理
2.3.1插件的架构
2.3.2事件和通信模型
2.3.3同源策略
2.4插件开发的基本概念
2.4.1Manifest V3
2.4.2Manifest V3 基本组成部分
2.5本章小结
第3章Manifest新特性介绍(24min)
3.1浏览器插件的发展愿景
3.1.1Webby模型
3.1.2权限模型
3.1.3隐私
3.1.4安全性
3.1.5性能
3.1.6Webbiness
3.2主要新特性详解
3.2.1Service Worker
3.2.2网络请求调整
3.2.3远程资源访问限制
3.2.4Promise
3.3本章小结
第4章快速上手(14min)
4.1创建清单文件
4.2安装扩展
4.3重新加载扩展
4.4添加后台脚本
4.5添加弹出页面
4.6添加选项页面
4.7添加内容脚本
4.8添加开发者工具面板
4.9本章小结
第5章Manifest详解(22min)
5.1清单文件
5.2国际化与模式匹配
5.2.1国际化配置
5.2.2模式匹配
5.3Manifest 属性
5.3.1必填属性
5.3.2推荐属性
5.4本章小结
第6章权限详解(27min)
6.1浏览器插件权限的基本概念
6.1.1浏览器权限模型
6.1.2浏览器插件权限模型
6.1.3声明式授权与命令式授权
6.1.4权限检查
6.1.5可选权限
6.1.6主机权限
6.2深入理解浏览器插件权限
6.2.1插件权限的生命周期
6.2.2理解与管理浏览器插件权限
6.3权限列表
6.4本章小结
第7章Popup and Option Page(16min)
7.1基本概念
7.1.1角色定位
7.1.2弹出页面与配置页面的区别
7.2弹出页面
7.2.1弹出页面
7.2.2弹出页面的设计原则
7.2.3开发弹出页面的常用操作
7.2.4常见的弹出页面使用建议
7.3配置页面
7.3.1配置页面介绍
7.3.2配置页面的设计原则
7.3.3开发配置页面的常用操作
7.3.4常见的配置页面建议
7.4本章小结
第8章Content(24min)
8.1深入理解内容脚本
8.1.1什么是内容脚本
8.1.2创建第1个内容脚本文件
8.1.3内容脚本的隔离性
8.1.4扩展API的访问
8.1.5脚本注入
8.1.6与共享页面通信
8.2模块化
8.2.1动态导入
8.2.2打包
8.2.3模块加载库
8.2.4转译
8.3特殊的属性
8.4与网页交互的范式
8.4.1文章阅读时间生成器
8.4.2沉浸式阅读模式
8.4.3对话助手界面生成
8.5本章小结
第9章Background脚本(18min)
9.1Service Worker
9.1.1Service Worker简介
9.1.2插件Service Worker
9.1.3Service Worker与Web Service Worker的异同
9.2核心概念
9.2.1插件的Service Worker生命周期
9.2.2插件Service Worker的事件
9.3Service Worker的常用模式
9.3.1事件处理器
9.3.2消息总线
9.3.3存储管理
9.3.4认证与密钥
9.3.5强制Service Worker活跃
9.3.6网络流量监控
9.3.7安装与事件更新
9.3.8Opening Tab
9.3.9脚本注入
9.4本章小结
第10章扩展与浏览器API(25min)
10.1快速预览
10.1.1基本概念
10.1.2深入理解WebExtensions API
10.1.3浏览器扩展的关键因素
10.2关键功能
10.2.1网络请求
10.2.2隐私
10.2.3idle
10.2.4DevTools
10.2.5扩展管理
10.2.6系统状态
10.3本章小结
第11章网络(13min)
11.1网页与浏览器插件的比较
11.1.1源
11.1.2API
11.1.3Remote assets
11.1.4页面类型
11.1.5服务器端请求
11.1.6认证
11.1.7长请求
11.2浏览器插件的网络架构
11.2.1选项页
11.2.2弹出和开发者工具页
11.2.3内容脚本
11.2.4服务工作线程
11.3浏览器插件网络API
11.3.1WebNavigation API
11.3.2WebRequest API
11.3.3DeclarativeNetRequest API
11.4本章小结
第12章项目实战
12.1基础知识
12.1.1Node.js
12.1.2TypeScript
12.1.3CSS预处理语言
12.1.4静态规则集
12.1.5动态规则集
12.2框架与工具
12.2.1JavaScript框架
12.2.2Vue 3
12.2.3Vite 5
12.3快速上手
12.4本章小结