الگوی تطابق، یک URL با ساختار زیر است که برای مشخص کردن گروهی از URLها استفاده میشود:
<scheme>://<host>:<port>/<path>
طرح : باید یکی از موارد زیر باشد که با استفاده از یک دونقطه و به دنبال آن یک اسلش دوتایی ( :// ) از بقیه الگو جدا شده است:
-
http -
https - یک کاراکتر
*که فقط باhttpیاhttpsمطابقت دارد. -
file
برای اطلاعات بیشتر در مورد تزریق اسکریپتهای محتوا به طرحهای پشتیبانی نشده، مانند about: و data: به بخش تزریق در فریمهای مرتبط مراجعه کنید.
میزبان : نام میزبان ( www.example.com ). برای مطابقت با زیر دامنهها ( *.example.com ) از * قبل از نام میزبان استفاده کنید، یا فقط یک کاراکتر جایگزین * . - اگر از یک کاراکتر جایگزین در الگوی میزبان استفاده میکنید، باید اولین یا تنها کاراکتر باشد و پس از آن باید یک نقطه ( . ) یا اسلش ( / ) قرار گیرد.
پورت (اختیاری) : پورت مورد نظر برای تطبیق. به طور پیشفرض، این به عنوان یک کاراکتر جایگزین با همان رفتار :* در نظر گرفته میشود.
مسیر : یک مسیر URL ( /example ). برای مجوزهای میزبان، مسیر مورد نیاز است اما نادیده گرفته میشود. علامت اختصاری ( /* ) باید طبق قرارداد استفاده شود.
افزونهها از الگوهای تطابق در موارد استفاده متنوعی از جمله موارد زیر استفاده میکنند:
- تزریق اسکریپت محتوا .
- اعلام مجوزهای میزبان که برخی از APIهای Chrome علاوه بر مجوزهای خودشان به آنها نیاز دارند.
- اعطای دسترسی به منابع قابل دسترسی از طریق وب .
- اجازه ارسال و دریافت پیام با استفاده از کلید مانیفست "externally_connectable.matches" .
موارد خاص
-
"<all_urls>" - با هر نشانی اینترنتی که با یک طرح مجاز شروع میشود، از جمله هر الگویی که در زیر الگوهای معتبر فهرست شده است، مطابقت دارد. از آنجا که بر همه میزبانها تأثیر میگذارد، بررسی افزونههایی که از آن استفاده میکنند در فروشگاه وب Chrome ممکن است بیشتر طول بکشد .
-
"file:///" - به افزونه شما اجازه میدهد تا روی فایلهای محلی اجرا شود. این الگو مستلزم آن است که کاربر به صورت دستی دسترسی را اعطا کند . توجه داشته باشید که در این حالت به سه اسلش نیاز است، نه دو تا.
- آدرسهای اینترنتی و آدرسهای IP میزبان محلی
- از
http://localhost/*یاhttp://127.0.0.1/*(برای تطبیق یک آدرس IP) استفاده کنید. الگوهای تطبیق با همه پورتها مطابقت دارند، مگر اینکه یک پورت صریح مشخص شده باشد. - الگوهای تطابق دامنه سطح بالا
- کروم از الگوهای تطابق برای دامنههای سطح بالا (TLD) پشتیبانی نمیکند. الگوهای تطابق خود را در TLD های جداگانه، مانند
http://google.es/*وhttp://google.fr/*مشخص کنید.
الگوهای نمونه
-
https://*/*یاhttps://*/ - با هر URL که از طرح
httpsاستفاده میکند، مطابقت دارد. -
https://*/foo* - هر URL ای را که از طرح
httpsاستفاده میکند، روی هر میزبانی، با مسیری که باfooشروع میشود، مطابقت میدهد. نمونههایی از موارد مطابقت عبارتند ازhttps://example.com/foo/bar.htmlوhttps://www.google.com/foo. -
https://*.google.com/foo*bar - با هر URL که از طرح
httpsاستفاده میکند، در میزبان google.com، با مسیری که باfooشروع میشود و باbarپایان مییابد، مطابقت دارد. نمونههایی از موارد مطابقت عبارتند ازhttps://www.google.com/foo/baz/barوhttps://docs.google.com/foobar. -
file:///foo* - با هر فایل محلی که مسیر آن با
fooشروع شود، مطابقت دارد. نمونههایی از تطابقها عبارتند ازfile:///foo/bar.htmlوfile:///foo. -
http://127.0.0.1/*یاhttp://127.0.0.1/ - با هر URL که از طرح
httpاستفاده میکند و روی میزبان 127.0.0.1 است، مطابقت دارد. نمونههایی از موارد مطابقت شاملhttp://127.0.0.1/وhttp://127.0.0.1/foo/bar.htmlاست. -
http://localhost/* - با هر پورت میزبان محلی مطابقت دارد.
-
*://mail.google.com/یا*://mail.google.com/* - با هر URL که با
http://mail.google.comیاhttps://mail.google.comشروع شود، مطابقت دارد.