一起来做 Chrome 扩展之基础介绍
首先说明,Chrome 的扩展并不它的插件,网上很多说写插件,其实都是说的扩展。写扩展并不复杂,只要根据 Chrome 提供的一系列的 API 进行就可以实现很多的功能。只是对API的学习是有代价的,加上国内访问 Chrome 官网文档并不顺利。虽然 360 提供了一个翻译文档,而且有不少例子,但它的内容还是太少,有些问题它仍然没有涉及。所以,如果是做一个简单的应用没有什么问题,但实际的项目开发往往得不到有用的介绍和解释。
这个系列的文章将从解决一些实际的问题入手,涉及的内容大致有以下几个:
- 基础配置
- content_script 和 background_script
- cookie 的使用
- 本地存储
- ajax 请求远程数据
博主也是在学习中,所说的也是开发过程中的一些总结,并不一定正确,如果有错,还请包涵。
写扩展只有一个文件是固定的,其它的并没有什么固定的要求,如固定的格式,固定的文件夹等。这个固定的文件就是它的配置文件,一个JSON格式的文件:manifest.json,基本内容如下:
manifest.json
{
"manifest_version": 2,
"name": "My Extension",
"description": "Extension description",
"version": "1.0"
}
这是一个最简单的文件,有2个需要注意的问题:
- 目前的规定,manifest_version 必须写为 2,所以其它的数字就不要写了,特别是 1
- JSON 中,最后一项,是不能有,号的,不然它会启用失败的。
这几项不用介绍,应该都知道它们是干嘛的,它们会出现在扩展界面里,别的就没什么用了。一个真正的扩展当然不可能只有这些。它能涉及到的,博主简单归纳为两类:
- chrome 浏览器的元素,如 Tab,书签,历史记录等。
- 页面内容
那么,如果你的扩展需要涉及什么,就得把它添加到配置 JSON 里,也就是 manifest.json 文件中,如需要用到Tab:
{
"manifest_version": 2,
"name": "My Extension",
"description": "Extension description",
"version": "1.0",
"permissions": [
"tabs"
]
}
permissions 即为允许的,它会告诉 Chrome,这个插件是允许操作 Tab 的,不然 Chrome 就允许让你使用它 Tab 相关的 API。所以,如果还有使用书签,或是别的什么东西时,都可以写在这里面。如,我们要使用代理相关的 API:
{
"manifest_version": 2,
"name": "My Extension",
"description": "Extension description",
"version": "1.0",
"permissions": [
"tabs",
"proxy"
]
}
proxy 即代表可以使用代理相关的 API,诸如比类还有 cookie,history 等,具体相关可以查阅官方文档
chrome 扩展对目录并没有严格的要求,所以,除了 manifest.json 这个文件必须,其它的都是按需增加。目录结构可以按你的习惯建立的命名,都没有问题。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论