activeTab
অনুমতি একটি এক্সটেনশনকে বর্তমানে সক্রিয় ট্যাবে অস্থায়ী অ্যাক্সেস দেয় যখন ব্যবহারকারী এক্সটেনশনটি আহ্বান করে - উদাহরণস্বরূপ তার ব্রাউজার অ্যাকশনে ক্লিক করে। ব্যবহারকারী সেই পৃষ্ঠায় থাকাকালীন ট্যাবে অ্যাক্সেস স্থায়ী হয় এবং ব্যবহারকারী যখন ট্যাবটি বন্ধ করে দেয় বা বন্ধ করে দেয় তখন তা প্রত্যাহার করা হয়।
এটি <all_urls>
এর অনেকগুলি ব্যবহারের জন্য একটি বিকল্প হিসাবে কাজ করে, কিন্তু ইনস্টলেশনের সময় কোনও সতর্কতা বার্তা প্রদর্শন করে না :
দ্রষ্টব্য: M72 এর পর থেকে, ব্যবহারকারী একটি ভিন্ন মূলে নেভিগেট না করা পর্যন্ত activeTab
অনুমতি দেওয়া হবে। অর্থাৎ, ব্যবহারকারী যদি https://example.com-এ এক্সটেনশনটি আনেন এবং তারপরে https://example.com/foo-এ নেভিগেট করেন, তাহলে এক্সটেনশনটির পৃষ্ঠায় অ্যাক্সেস থাকবে। ব্যবহারকারী https://chromium.org-এ নেভিগেট করলে, অ্যাক্সেস প্রত্যাহার করা হয়।
activeTab
ছাড়া:
activeTab
সাথে:
উদাহরণ
পেজ রেডার নমুনা এক্সটেনশন দেখুন:
{
"name": "Page Redder",
"version": "2.0",
"permissions": [
"activeTab"
],
"background": {
"scripts": ["background.js"],
"persistent": false
},
"browser_action": {
"default_title": "Make this page red"
},
"manifest_version": 2
}
// Called when the user clicks on the browser action.
chrome.browserAction.onClicked.addListener(function(tab) {
// No tabs or host permissions needed!
console.log('Turning ' + tab.url + ' red!');
chrome.tabs.executeScript({
code: 'document.body.style.backgroundColor="red"'
});
});
প্রেরণা
একটি ওয়েব ক্লিপিং এক্সটেনশন বিবেচনা করুন যাতে একটি ব্রাউজার অ্যাকশন এবং প্রসঙ্গ মেনু আইটেম রয়েছে৷ এই এক্সটেনশনটির ব্রাউজার অ্যাকশনে ক্লিক করার সময়, বা যখন এর প্রসঙ্গ মেনু আইটেমটি কার্যকর করা হয় তখনই শুধুমাত্র ট্যাবগুলি অ্যাক্সেস করার প্রয়োজন হতে পারে।
activeTab
ব্যতীত, এই এক্সটেনশনটিকে প্রতিটি ওয়েব সাইটে সম্পূর্ণ, অবিরাম অ্যাক্সেসের অনুরোধ করতে হবে, যাতে এটি ব্যবহারকারীর দ্বারা আহ্বান করা হলে এটি তার কাজ করতে পারে। এই যেমন একটি সহজ এক্সটেনশন অর্পণ ক্ষমতা অনেক. এবং যদি এক্সটেনশনটি কখনও আপস করা হয়, আক্রমণকারী এক্সটেনশনের সমস্ত কিছুতে অ্যাক্সেস পায়৷
বিপরীতে, activeTab
অনুমতি সহ একটি এক্সটেনশন শুধুমাত্র একটি স্পষ্ট ব্যবহারকারীর অঙ্গভঙ্গির প্রতিক্রিয়া হিসাবে একটি ট্যাবে অ্যাক্সেস পায়৷ যদি এক্সটেনশনটি আপস করা হয় তবে আক্রমণকারীকে অ্যাক্সেস পাওয়ার আগে ব্যবহারকারীর এক্সটেনশনটি শুরু করার জন্য অপেক্ষা করতে হবে। এবং এই অ্যাক্সেস শুধুমাত্র ট্যাব নেভিগেট করা বা বন্ধ না হওয়া পর্যন্ত স্থায়ী হয়।
ActiveTab কি অনুমতি দেয়
একটি ট্যাবের জন্য activeTab
অনুমতি সক্রিয় থাকা অবস্থায়, একটি এক্সটেনশন করতে পারে:
- সেই ট্যাবে
tabs.executeScript
বাtabs.insertCSS
কল করুন। - একটি API-এর মাধ্যমে সেই ট্যাবের URL, শিরোনাম এবং ফেভিকন পান যা একটি
tabs.Tab
অবজেক্ট প্রদান করে (মূলত,activeTab
সাময়িকভাবেtabs
অনুমতি দেয়)। - webRequest API ব্যবহার করে ট্যাবের মূল ফ্রেমের উৎপত্তিতে ট্যাবে নেটওয়ার্ক অনুরোধগুলিকে ইন্টারসেপ্ট করুন৷ এক্সটেনশনটি সাময়িকভাবে ট্যাবের প্রধান ফ্রেমের উৎসের জন্য হোস্টের অনুমতি পায়।
সক্রিয় ট্যাব আহ্বান করা হচ্ছে
নিম্নলিখিত ব্যবহারকারীর অঙ্গভঙ্গি activeTab
সক্ষম করে:
- একটি ব্রাউজার অ্যাকশন নির্বাহ করা হচ্ছে
- একটি পৃষ্ঠা ক্রিয়া সম্পাদন করা হচ্ছে
- একটি প্রসঙ্গ মেনু আইটেম নির্বাহ করা হচ্ছে
- কমান্ড API থেকে একটি কীবোর্ড শর্টকাট নির্বাহ করা হচ্ছে
- omnibox API থেকে একটি পরামর্শ গ্রহণ করা হচ্ছে