ম্যাচ প্যাটার্ন হলো নিম্নলিখিত কাঠামোযুক্ত একটি URL, যা একাধিক URL-এর একটি গ্রুপ নির্দিষ্ট করতে ব্যবহৃত হয়:
<scheme>://<host>:<port>/<path>
স্কিম : অবশ্যই নিম্নলিখিতগুলির মধ্যে একটি হতে হবে, যা একটি কোলন এবং তারপরে একটি ডাবল স্ল্যাশ ( :// ) দ্বারা প্যাটার্নের বাকি অংশ থেকে আলাদা করা থাকে :
-
http -
https - একটি ওয়াইল্ডকার্ড
*, যা শুধুমাত্রhttpবাhttpsসাথে মেলে। -
file
about: এবং data: এর মতো অসমর্থিত স্কিমগুলিতে কন্টেন্ট স্ক্রিপ্ট ইনজেক্ট করার তথ্যের জন্য, Injecting in related frames দেখুন।
হোস্ট : একটি হোস্টনেম ( www.example.com )। সাবডোমেন মেলানোর জন্য হোস্টনেমের আগে একটি * ( *.example.com ), অথবা শুধু একটি ওয়াইল্ডকার্ড * । - যদি আপনি হোস্ট প্যাটার্নে ওয়াইল্ডকার্ড ব্যবহার করেন, তবে সেটি অবশ্যই প্রথম বা একমাত্র অক্ষর হতে হবে এবং এর পরে একটি পিরিয়ড ( . ) বা ফরওয়ার্ড স্ল্যাশ ( / ) থাকতে হবে।
পোর্ট (ঐচ্ছিক) : যে পোর্টটি মেলাতে হবে। ডিফল্টরূপে, এটিকে একটি ওয়াইল্ডকার্ড হিসেবে গণ্য করা হয় এবং এর আচরণ :* এর মতোই।
পাথ : একটি ইউআরএল পাথ ( /example )। হোস্ট পারমিশনের জন্য পাথটি আবশ্যক, কিন্তু উপেক্ষা করা হয়। প্রচলিত নিয়ম অনুযায়ী ওয়াইল্ডকার্ড ( /* ) ব্যবহার করা উচিত।
এক্সটেনশনগুলি বিভিন্ন ক্ষেত্রে ম্যাচ প্যাটার্ন ব্যবহার করে, যার মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত:
- কন্টেন্ট স্ক্রিপ্ট ইনজেক্ট করা হচ্ছে।
- কিছু ক্রোম এপিআই-এর নিজস্ব অনুমতির পাশাপাশি যে হোস্ট অনুমতিগুলো প্রয়োজন হয়, সেগুলো ঘোষণা করা ।
- ওয়েব-প্রাপ্য সম্পদসমূহে প্রবেশাধিকার প্রদান।
- 'externally_connectable.matches' ম্যানিফেস্ট কী ব্যবহার করে বার্তা পাঠানো এবং গ্রহণ করার অনুমতি দেওয়া হচ্ছে।
বিশেষ ক্ষেত্রে
-
"<all_urls>" - অনুমোদিত স্কিম দিয়ে শুরু হওয়া যেকোনো URL-এর সাথে এটি মেলে, যার মধ্যে বৈধ প্যাটার্নের অধীনে তালিকাভুক্ত যেকোনো প্যাটার্নও অন্তর্ভুক্ত। যেহেতু এটি সমস্ত হোস্টকে প্রভাবিত করে, তাই যেসব এক্সটেনশন এটি ব্যবহার করে, সেগুলোর জন্য Chrome ওয়েব স্টোরের রিভিউ হতে বেশি সময় লাগতে পারে ।
-
"file:///" - আপনার এক্সটেনশনকে স্থানীয় ফাইলগুলিতে চালানোর অনুমতি দেয়। এই প্যাটার্নটির জন্য ব্যবহারকারীকে ম্যানুয়ালি অ্যাক্সেস মঞ্জুর করতে হবে। মনে রাখবেন, এক্ষেত্রে দুটি নয়, তিনটি স্ল্যাশ প্রয়োজন।
- লোকালহোস্ট ইউআরএল এবং আইপি ঠিকানা
-
http://localhost/*অথবাhttp://127.0.0.1/*(একটি আইপি অ্যাড্রেস মেলানোর জন্য) ব্যবহার করুন। নির্দিষ্ট কোনো পোর্ট উল্লেখ না করা থাকলে, ম্যাচ প্যাটার্নগুলো সব পোর্টের সাথেই মেলে। - শীর্ষ স্তরের ডোমেন মিল প্যাটার্ন
- ক্রোম টপ লেভেল ডোমেইন (TLD)- এর জন্য ম্যাচ প্যাটার্ন সমর্থন করে না। আপনার ম্যাচ প্যাটার্নগুলো প্রতিটি TLD-এর ভেতরে উল্লেখ করুন, যেমন
http://google.es/*এবংhttp://google.fr/*।
উদাহরণ প্যাটার্ন
-
https://*/*অথবাhttps://*/ -
httpsস্কিম ব্যবহার করে এমন যেকোনো URL-এর সাথে মেলে। -
https://*/foo* - যেকোনো হোস্টে,
httpsস্কিম ব্যবহার করে এমন যেকোনো URL-কে ম্যাচ করে, যার পাথfooদিয়ে শুরু হয়। ম্যাচ হওয়ার উদাহরণগুলোর মধ্যে রয়েছেhttps://example.com/foo/bar.htmlএবংhttps://www.google.com/foo। -
https://*.google.com/foo*bar -
httpsস্কিম ব্যবহার করে google.com হোস্টে থাকা যেকোনো URL-কে ম্যাচ করে, যার পাথ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/ -
httpস্কিম ব্যবহার করে এবং 127.0.0.1 হোস্টে অবস্থিত যেকোনো URL-এর সাথে মেলে। মিলের উদাহরণগুলির মধ্যে রয়েছেhttp://127.0.0.1/এবংhttp://127.0.0.1/foo/bar.html। -
http://localhost/* - যেকোনো লোকালহোস্ট পোর্টের সাথে মেলে।
-
*://mail.google.com/অথবা*://mail.google.com/* -
http://mail.google.comবাhttps://mail.google.comদিয়ে শুরু হওয়া যেকোনো URL-এর সাথে মেলে।