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

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

  • scheme: مثل http أو file أو *

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

  • المسار: مثل /* أو /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. إذا كانت قيمة host هي * فقط، ولكنها تتطابق مع أي مضيف. إذا كان المضيف هو *._hostname_، فسيتطابق مع المضيف المحدد أو أي من نطاقاته الفرعية. في قسم المسار، كل خطأ "*" تطابق 0 أو أكثر الأحرف. يعرض الجدول التالي بعض الأنماط الصالحة.

النمطوظيفتهاأمثلة على عناوين URL المطابقة
http://*/*يطابق أي عنوان URL يستخدم مخطّط httphttp://www.google.com/
http://example.org/foo/bar.html
http://*/foo*يطابق أي عنوان URL يستخدم مخطط http على أي مضيف ما دام المسار يبدأ بـ /foohttp://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*يطابق أي ملف محلي يبدأ مساره بـ /foofile:///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فاصل scheme غير موجود (يجب أن يكون "/" هو "//")
foo://*مخطط غير صالح

بعض المخطَّطات غير متاحة في جميع السياقات.