首页/新闻资讯/正文详情

详解Elsevier-Tracker的manifest.json:Manifest V3权限与内容脚本配置清单

发布时间:2026/9/25 1:46:43 来源:云帆数科 栏目:资讯中心
详解Elsevier-Tracker的manifest.json:Manifest V3权限与内容脚本配置清单
详解Elsevier-Tracker的manifest.jsonManifest V3权限与内容脚本配置清单【免费下载链接】Elsevier-Tracker项目地址: https://gitcode.com/gh_mirrors/el/Elsevier-TrackerElsevier-Tracker 是一款帮助作者实时跟踪 Elsevier爱思唯尔期刊投稿审稿状态的 Chrome 浏览器扩展。本文以 manifest.json 为蓝本完整拆解Manifest V3 扩展中的两大核心配置host_permissions主机权限与content_scripts内容脚本并给出一份新手可直接对照的权限配置清单。 30秒看懂扩展由哪几个文件组成Elsevier-Tracker 结构非常精简一个新手最该关注的就是下面三个文件文件作用manifest.json扩展的身份证声明版本、权限、要注入的脚本content.js内容脚本在 AuthorHub 审稿页拉取数据、渲染状态面板README.md功能介绍与安装说明 记住一个核心概念manifest.json 决定扩展能去哪里、能做什么、何时做什么其余文件都是被它调度的执行者。️ 基础字段Manifest V3 的四个身份声明manifest.json 开头的四个字段是整个扩展的地基字段本项目取值含义manifest_version3声明采用 Manifest V3 规范Chrome 现行标准nameElsevier tracker扩展在浏览器中显示的名称version1.0版本号用于区分更新descriptionHelps users track the latest status...一句话描述功能另外 icons 字段注册了 16 / 32 / 48 / 128 四种尺寸的图标如extension_icon128.png分别用于工具栏、扩展管理页等场景属于 MV3 的推荐配置。 host_permissions扩展被允许访问哪些域名MV3 采用最小权限原则扩展只有声明过的域名才能被脚本直接发起跨域请求。本项目的声明见 manifest.json#L6-L9host_permissions: [ https://tnlkuelk67.execute-api.us-east-1.amazonaws.com/*, *://track.authorhub.elsevier.com/* ]两条权限各有分工AWS API 域名扩展真正的数据源。content.js 会向tracker/{uuid}接口发起fetch请求拉取稿件的 JSON 数据。没有这条权限请求会被浏览器拦截。AuthorHub 跟踪页即用户粘贴 UUID 后打开的官方审稿页*://写法表示 http/https 都匹配。声明它可以让扩展在该域下获得完整的页面级能力。 新手要点两条权限都是够用就好——没有申请*://*/*这种通配全网权限这也是安装扩展时判断其是否干净的关键信号。 content_scripts扩展往哪个页面注入、何时注入content_scripts是内容脚本的配置区见 manifest.json#L10-L16字段本项目取值含义matcheshttps://track.authorhub.elsevier.com/*注入范围只匹配官方审稿跟踪页jscontent.js要注入的脚本文件run_atdocument_end注入时机DOM 解析完成后执行三个字段环环相扣matches比host_permissions更窄——内容脚本只在用户真正打开审稿页时才运行其他网站完全不受影响run_at: document_end是关键细节。content.js 需要往document.body追加 DOM 节点来构建浮动面板若用document_start此时body还不存在面板就会注入失败脚本本身做的事很简单从 URL 读取uuid参数 → 请求后端 → 在页面右上角渲染Elsevier 审稿状态面板并附带一个可点击的显示/隐藏审稿状态按钮。️ 实际效果内容脚本渲染出的状态面板下面就是content.js注入后在 AuthorHub 页面上呈现的审稿状态跟踪面板可见稿件信息、各 Revision 阶段以及每位审稿人的邀请/接受/完成时间与状态✅ 配置清单Manifest V3 权限核对表把上面的拆解浓缩成一张核对表你可以拿它检查任何扩展的 manifest.json核对项本项目配置是否必要manifest_version: 3✔ 已声明MV3 必备host_permissions数量仅 2 条指向真实依赖符合最小权限原则host_permissions是否含通配全网无*://*/*加分项 ✔content_scripts.matches是否精确只匹配 1 个官方域避免误注入run_at时机是否与脚本逻辑匹配document_end配合 DOM 操作正确 ✔icons多尺寸注册16/32/48/128 齐全推荐配置 获取与本地安装3步加载扩展如果想亲手验证上面的配置可按以下步骤操作克隆仓库仓库地址https://gitcode.com/gh_mirrors/el/Elsevier-Tracker打开 Chrome进入地址chrome://extensions/右上角开启**开发者模式**点击**加载已解压的扩展程序**选择仓库目录即可看到 Elsevier tracker 出现在扩展列表中。安装后访问带有uuid参数的 AuthorHub 跟踪页内容脚本便会自动执行并显示状态面板。⚠️ 新手常见的 3 个配置坑matches写宽了比如误写成*://*/*内容脚本会注入到每一个网站既拖慢网页又泄露脚本逻辑run_at选错时机脚本要操作 DOM 时却用了document_start运行后什么都不发生host_permissions与脚本实际请求不一致向未声明的域名fetch会被 MV3 直接拦截控制台报 CORS/权限错误。小结Elsevier-Tracker 的 manifest.json 是一个教科书级的 MV3 精简配置2 条精准的主机权限 1 个单域内容脚本 合理的注入时机没有一处冗余权限。读懂这份清单后你也能快速看懂、甚至独立写出其他浏览器扩展的权限配置。输出文章【免费下载链接】Elsevier-Tracker项目地址: https://gitcode.com/gh_mirrors/el/Elsevier-Tracker创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

Excel实时汇率获取全攻略:数据类型、Power Query与VBA方案对比
Excel实时汇率获取全攻略:数据类型、Power Query与VBA方案对比

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:46:37

华南X99F8D错误码67内存急救指南:金手指清洁与插槽排查全流程
华南X99F8D错误码67内存急救指南:金手指清洁与插槽排查全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:46:37

BAML C++ SDK 代码风格指南:Google 布局与标准库命名的工程实践
BAML C++ SDK 代码风格指南:Google 布局与标准库命名的工程实践

编程语言AI Agent编译器CLI人工智能 【免费下载链接】baml The programming language for agents 项目地址: https://gitcode.com/gh_mirrors/ba/baml 点击查看 免费下载 导读 本文以 baml_language/sdks/cpp/STYLE.md 为骨架,系统讲解 BAML C SDK 的代… · 2026/9/25 1:46:37

SwiftGen 持续集成检查:用 CI 自动拦截“忘记重新生成代码常量“的提交
SwiftGen 持续集成检查:用 CI 自动拦截“忘记重新生成代码常量“的提交

开发工具代码生成 【免费下载链接】SwiftGen The Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all String-based APIs! 项目地址: https://gitcode.com/gh_mirrors/sw/SwiftGen 点击查看 免费下载 本篇技术指南聚焦… · 2026/9/25 2:20:15

SQL Assessment API 消息模板(Message Template)完全指南:从插值语法到格式化实战
SQL Assessment API 消息模板(Message Template)完全指南:从插值语法到格式化实战

示例工程数据库教程后端 【免费下载链接】sql-server-samples Azure Data SQL Samples - Official Microsoft GitHub Repository containing code samples for SQL Server, Azure SQL, Azure Synapse, and Azure SQL Edge 项目地址: https://gitcode.com/gh_mirrors… · 2026/9/25 2:20:15

海思视觉Hi3519DV500--固定网卡地址
海思视觉Hi3519DV500--固定网卡地址

默认 没有内置 eFuse/OTP 的 MAC 地址烧录机制,网卡驱动在初始化时会:发现没有有效的永久 MAC(比如 flash 中没有,驱动中没写)就会自动随机生成一个 MAC因此 每次重启 MAC 都会变,这是正常现象。/etc/macad… · 2026/9/25 2:20:09

BAML for C 托管契约探针(ManagedContractProbe):公共类型与翻译证据的编译期验证指南
BAML for C 托管契约探针(ManagedContractProbe):公共类型与翻译证据的编译期验证指南

编程语言AI Agent编译器CLI人工智能 【免费下载链接】baml The programming language for agents 项目地址: https://gitcode.com/gh_mirrors/ba/baml 点击查看 免费下载 导读 Baml.Bridge.ManagedContractProbe 是 BAML C# 桥接层(baml-bridge&#x… · 2026/9/25 2:20:09

PaddleSpeech 英中语音翻译实战:基于 TED_En_Zh 的 Transformer 端到端语音翻译(ST)模型训练与评估指南
PaddleSpeech 英中语音翻译实战:基于 TED_En_Zh 的 Transformer 端到端语音翻译(ST)模型训练与评估指南

人工智能语音音频 【免费下载链接】PaddleSpeech Easy-to-use Speech Toolkit including Self-Supervised Learning model, SOTA/Streaming ASR with punctuation, Streaming TTS with text frontend, Speaker Verification System, End-to-End Speech Translation and Keyword… · 2026/9/25 2:20:09

BentoML 输入输出类型(IO Types)完全指南:定义 Service API 数据契约
BentoML 输入输出类型(IO Types)完全指南:定义 Service API 数据契约

模型推理服务人工智能后端大模型MLOpsLLMOps 【免费下载链接】BentoML The easiest way to serve AI apps and models - Build Model Inference APIs, Job queues, LLM apps, Multi-model pipelines, and more! 项目地址: https://gitcode.com/gh_mirrors/be/BentoM… · 2026/9/25 2:20:09

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码