مطابقة الأنماط

تستند مطابقة أذونات المضيف والنصوص البرمجية للمحتوى إلى مجموعة من عناوين URL التي تحدّدها أنماط المطابقة. نمط المطابقة هو في الأساس عنوان URL يبدأ بتنسيق مسموح به (http أو https أو file أو ftp، ويمكن أن يحتوي على أحرف "*". يتطابق النمط الخاص <all_urls> مع أي عنوان URL يبدأ بنظام مسموح به. يتألّف كل نمط مطابقة من 3 أجزاء:

  • مخطّط، على سبيل المثال، http أو file أو *

    ملاحظة: لا يكون الوصول إلى عناوين URL الخاصة بـ file تلقائيًا. على المستخدم الانتقال إلى صفحة إدارة الإضافات وتفعيل إذن الوصول إلى file لكل إضافة تطلب ذلك.
  • host: على سبيل المثال، www.google.com أو *.google.com أو *. إذا كان المخطّط هو file، لن يكون هناك جزء host

  • المسار، مثل /* أو /foo* أو /foo/bar يجب أن يكون المسار متوفّرًا في إذن المضيف، ولكن يتم التعامل معه دائمًا على أنّه /*.

في ما يلي بنية الجملة الأساسية:

&lt;url-pattern&gt; := &lt;scheme&gt;://&lt;host&gt;&lt;path&gt;
&lt;scheme&gt; := '*' | 'http' | 'https' | 'file' | 'ftp' | 'urn'
&lt;host&gt; := '*' | '*.' &lt;any char except '/' and '*'&gt;+
&lt;path&gt; := '/' &lt;any chars&gt;

يعتمد معنى الرمز "*" على ما إذا كان في جزء المخطّط أو المضيف أو المسار. إذا كان المخطّط هو *، يتطابق مع http أو https، وليس file أو ftp أو urn. إذا كان المضيف هو * فقط، سيتطابق مع أي مضيف. إذا كان المضيف هو *._hostname_، يعني ذلك أنّه يتطابق مع المضيف المحدّد أو أيّ من نطاقاته الفرعية. في قسم المسار، يتطابق كل * مع 0 أو أكثر من الأحرف. يعرض الجدول التالي بعض الأنماط الصالحة.

النمطوظيفتهاأمثلة على عناوين URL المتطابقة
http://*/*يطابق أي عنوان URL يستخدم مخطّط httphttp://www.google.com/
http://example.org/foo/bar.html
http://*/foo*يطابق أي عنوان URL يستخدم مخطّط http على أي مضيف، ما دام المسار يبدأ بـ /foo.http://example.com/foo/bar.html
http://www.google.com/foo
https://*.google.com/foo*barمطابقة أي عنوان URL يستخدم مخطّط https، ويكون على مضيف google.com (مثل www.google.com أو docs.google.com أو google.com)، طالما أنّ المسار يبدأ بـ /foo وينتهي بـ barhttps://www.google.com/foo/baz/bar
https://docs.google.com/foobar
http://example.org/foo/bar.htmlمطابق لعنوان URL المحدّدhttp://example.org/foo/bar.html
file:///foo*يطابق أي ملف على الجهاز يبدأ مساره بـ /foo.file:///foo/bar.html
file:///foo
http://127.0.0.1/*يتطابق مع أي عنوان URL يستخدم مخطّط http ويقع على المضيف 127.0.0.1http://127.0.0.1/
http://127.0.0.1/foo/bar.html
*://mail.google.com/*يطابق أي عنوان URL يبدأ بـ http://mail.google.com أو https://mail.google.com.http://mail.google.com/foo/baz/bar
https://mail.google.com/foobar
urn:*يطابق أي عنوان URL يبدأ بـ urn:.urn:uuid:54723bea-c94e-480e-80c8-a69846c3f582
urn:uuid:cfa40aff-07df-45b2-9f95-e023bcf4a6da
<all_urls>يتطابق مع أي عنوان URL يستخدم مخطّطًا مسموحًا به. (اطّلِع على بداية هذا القسم لمعرفة قائمة المخططات المسموح بها).http://example.org/foo/bar.html
file:///bar/baz.html

في ما يلي بعض الأمثلة على مطابقات الأنماط غير الصالحة:

نمط غير صحيحأسباب عدم صلاحية الصفحة
http://www.google.comبدون مسار
http://*foo/barلا يمكن استخدام الرمز "*" في المضيف إلا بعد الرمز "." أو "/".
http://foo.*.bar/baz إذا كان الحرف "*" في المضيف، يجب أن يكون الحرف الأول.
http:/barعدم توفّر فاصل المخطّط ("/" يجب أن يكون "//")
foo://*مخطّط غير صالح

لا تتوفّر بعض المخططات في جميع السياقات.