返回介绍

匹配模式

发布于 2020-10-04 14:16:09 字数 2058 浏览 898 评论 0 收藏 0

主机权限 和 内容脚本匹配 是基于匹配模式定义的一组 URL。匹配模式本质上是一个以允许的 schema(http,https,file 或ftp 开头)的URL,并且可以包含 * 字符。特殊模式 < all_urls > 匹配以允许的 schema 开头的任何 URL。 每个模式包含 3 个部分:

  • schema - 例如,http 或 file 或 *,注意:对文件 URL 的访问不是自动的。用户必须访问扩展管理页面,并选择对每个请求扩展的文件进行文件访问。
  • host -例如,www.google.com 或*.google.com 或 *; 如果 schema 是 file,则没有 host 部分
  • path-例如,/,/foo 或 /foo/bar。该路径必须在 host permission 中,但始终被视为 /*。

基本语法如下:

<url-pattern> := <scheme>://<host><path>
<scheme> := '*' | 'http' | 'https' | 'file' | 'ftp'
<host> := '*' | '*.' <any char except '/' and '*'>+
<path> := '/' <any chars>

* 的含义取决于它是在 schema, host 还是 path 部分中。如果 schema 为 *,则它匹配 http 或 https,而不匹配 file 或 ftp。 如果 host 为 *,则它匹配任何主机。如果 host 是 *.hostname,则它匹配指定的 host 或任何子域。在 path 部分,每个 " * " 匹配 0个或多个字符。 下表显示了一些有效的模式。

PatternWhat it doesExamples of matching URLs
http://*/*匹配使用 http schema 的所有 URLhttp://www.google.com/ http://example.org/foo/bar.html
http://*/foo*匹配任何在主机上使用 http schema 的 URL,并且路径以 /foo开头http://example.com/foo/bar.html http://www.google.com/foo
https://*.google.com/foo*bar匹配 google.com主机上的任何使用 https schema 的 URL(例如 www.google.com,docs.google.com或 google.com),路径以 /foo开头并以 bar 结尾https://www.google.com/foo/baz/bar https://docs.google.com/foobar
http://example.org/foo/bar.html匹配指定的URLhttp://example.org/foo/bar.html
file:///foo*匹配路径以 /foo 开头的任何本地文件file:///foo/bar.html file:///foo
http://127.0.0.1/*匹配使用 http schema 且位于主机127.0.0.1上的 URLhttp://127.0.0.1/ http://127.0.0.1/foo/bar.html
*

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文