রিফ্রেশ তারিখ: ২০২৬-০৯-২৫ রোবটস: নোইনডেক্স
বর্ণনা
chrome.extension API-তে এমন কিছু ইউটিলিটি রয়েছে যা যেকোনো এক্সটেনশন পেজ ব্যবহার করতে পারে। এতে একটি এক্সটেনশন ও তার কন্টেন্ট স্ক্রিপ্টের মধ্যে অথবা এক্সটেনশনগুলোর নিজেদের মধ্যে বার্তা আদান-প্রদানের সুবিধা রয়েছে, যা Message Passing অংশে বিস্তারিতভাবে বর্ণনা করা হয়েছে।
প্রকারভেদ
ViewType
এক্সটেনশন ভিউয়ের ধরণ।
এনাম
"ট্যাব" "পপআপ"
বৈশিষ্ট্য
inIncognitoContext
ইনকগনিটো ট্যাবের ভিতরে চলমান কন্টেন্ট স্ক্রিপ্ট এবং ইনকগনিটো প্রসেসের ভিতরে চলমান এক্সটেনশন পেজের জন্য এটি সত্য। পরেরটি শুধুমাত্র 'split' incognito_behavior যুক্ত এক্সটেনশনগুলির ক্ষেত্রে প্রযোজ্য।
প্রকার
বুলিয়ান
lastError
অনুগ্রহ করে runtime.lastError ব্যবহার করুন।
যদি কোনো অ্যাসিঙ্ক্রোনাস এক্সটেনশন এপিআই-এর ফলে কোনো ত্রুটি ঘটে, তবে একটি কলব্যাকের জীবনকালের জন্য এটি সেট করা হয়। যদি কোনো ত্রুটি না ঘটে, তবে lastError-এর মান undefined হবে।
প্রকার
বস্তু
বৈশিষ্ট্য
- বার্তা
স্ট্রিং
সংঘটিত ত্রুটির বিবরণ।
পদ্ধতি
getBackgroundPage()
chrome.extension.getBackgroundPage(): Window | undefined
বর্তমান এক্সটেনশনের ভিতরে চলমান ব্যাকগ্রাউন্ড পেজের জন্য জাভাস্ক্রিপ্ট 'window' অবজেক্টটি ফেরত দেয়। এক্সটেনশনটির কোনো ব্যাকগ্রাউন্ড পেজ না থাকলে null ফেরত দেয়।
ফেরত
উইন্ডো | অনির্দিষ্ট
getExtensionTabs()
chrome.extension.getExtensionTabs(
windowId?: number,
): Window[]
অনুগ্রহ করে extension.getViews {type: "tab"} ব্যবহার করুন।
বর্তমান এক্সটেনশনের মধ্যে চলমান প্রতিটি ট্যাবের জাভাস্ক্রিপ্ট 'window' অবজেক্টের একটি অ্যারে ফেরত দেয়। যদি windowId নির্দিষ্ট করা থাকে, তবে শুধুমাত্র নির্দিষ্ট উইন্ডোর সাথে সংযুক্ত ট্যাবগুলির 'window' অবজেক্টগুলি ফেরত দেওয়া হয়।
প্যারামিটার
- উইন্ডোআইডি
সংখ্যা ঐচ্ছিক
ফেরত
উইন্ডো[]
গ্লোবাল উইন্ডো অবজেক্টের অ্যারে
getURL()
chrome.extension.getURL(
path: string,
): string
অনুগ্রহ করে runtime.getURL ব্যবহার করুন।
এক্সটেনশন ইনস্টল ডিরেক্টরির মধ্যে থাকা একটি রিলেটিভ পাথকে একটি পূর্ণাঙ্গ ইউআরএল-এ রূপান্তর করে।
প্যারামিটার
- পথ
স্ট্রিং
কোনো এক্সটেনশনের অন্তর্গত রিসোর্সের পাথ, যা তার ইনস্টল ডিরেক্টরির সাপেক্ষে প্রকাশ করা হয়।
ফেরত
স্ট্রিং
রিসোর্সটির পূর্ণাঙ্গ URL।
getViews()
chrome.extension.getViews(
fetchProperties?: object,
): Window[]
বর্তমান এক্সটেনশনের মধ্যে চলমান প্রতিটি পৃষ্ঠার জন্য জাভাস্ক্রিপ্ট 'window' অবজেক্টগুলোর একটি অ্যারে ফেরত দেয়।
প্যারামিটার
- fetchProperties
বস্তু ঐচ্ছিক
- ট্যাবআইডি
সংখ্যা ঐচ্ছিক
ক্রোম ৫৪+ট্যাব আইডি অনুযায়ী একটি ভিউ খুঁজুন। এই ফিল্ডটি বাদ দিলে, সমস্ত ভিউ ফেরত আসবে।
- প্রকার
ভিউটাইপ ঐচ্ছিক
যে ধরনের ভিউ পেতে চান। এটি বাদ দিলে, ব্যাকগ্রাউন্ড পেজ এবং ট্যাব সহ সমস্ত ভিউ ফেরত আসবে।
- উইন্ডোআইডি
সংখ্যা ঐচ্ছিক
যে উইন্ডোতে অনুসন্ধান সীমাবদ্ধ করা হবে। এটি বাদ দিলে, সমস্ত ভিউ ফেরত আসবে।
ফেরত
উইন্ডো[]
গ্লোবাল অবজেক্টের অ্যারে
isAllowedFileSchemeAccess()
chrome.extension.isAllowedFileSchemeAccess(
callback?: function,
): Promise<boolean>
'file://' স্কিমে এক্সটেনশনটির অ্যাক্সেসের অবস্থা পুনরুদ্ধার করে। এটি chrome://extensions পৃষ্ঠার মাধ্যমে অ্যাক্সেসযোগ্য, ব্যবহারকারী-নিয়ন্ত্রিত প্রতিটি এক্সটেনশনের জন্য নির্ধারিত 'ফাইল ইউআরএল-এ অ্যাক্সেসের অনুমতি দিন' সেটিং-এর সাথে সঙ্গতিপূর্ণ।
প্যারামিটার
- কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(isAllowedAccess: boolean) => void
- অ্যাক্সেসের অনুমতি আছে
বুলিয়ান
এক্সটেনশনটি 'file://' স্কিমটি অ্যাক্সেস করতে পারলে True, অন্যথায় False।
ফেরত
প্রতিশ্রুতি<বুলিয়ান>
ক্রোম ৯৯+প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।
isAllowedIncognitoAccess()
chrome.extension.isAllowedIncognitoAccess(
callback?: function,
): Promise<boolean>
এক্সটেনশনটির ইনকগনিটো-মোডে প্রবেশের অবস্থা পুনরুদ্ধার করে। এটি chrome://extensions পৃষ্ঠার মাধ্যমে অ্যাক্সেসযোগ্য, ব্যবহারকারী-নিয়ন্ত্রিত প্রতিটি এক্সটেনশনের জন্য নির্ধারিত 'Allowed in Incognito' সেটিং-এর সাথে সঙ্গতিপূর্ণ।
প্যারামিটার
- কলব্যাক
ফাংশন ঐচ্ছিক
callbackপ্যারামিটারটি দেখতে এইরকম:(isAllowedAccess: boolean) => void
- অ্যাক্সেসের অনুমতি আছে
বুলিয়ান
এক্সটেনশনটির ইনকগনিটো মোডে অ্যাক্সেস থাকলে সত্য, অন্যথায় মিথ্যা।
ফেরত
প্রতিশ্রুতি<বুলিয়ান>
ক্রোম ৯৯+প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।
sendRequest()
chrome.extension.sendRequest(
extensionId?: string,
request: any,
callback?: function,
): Promise<any>
অনুগ্রহ করে runtime.sendMessage ব্যবহার করুন।
এক্সটেনশনের মধ্যে থাকা অন্যান্য লিসেনারদের কাছে একটিমাত্র অনুরোধ পাঠায়। এটি runtime.connect এর অনুরূপ, কিন্তু একটি ঐচ্ছিক প্রতিক্রিয়াসহ কেবল একটিমাত্র অনুরোধ পাঠায়। এক্সটেনশনের প্রতিটি পৃষ্ঠায় extension.onRequest ইভেন্টটি ফায়ার হয়।
প্যারামিটার
- এক্সটেনশন আইডি
স্ট্রিং ঐচ্ছিক
আপনি যে এক্সটেনশনটির সাথে সংযোগ করতে চান তার এক্সটেনশন আইডি। এটি উল্লেখ না করলে, ডিফল্ট হিসেবে আপনার নিজের এক্সটেনশন ব্যবহৃত হবে।
- অনুরোধ
যেকোনো
- কলব্যাক
ফাংশন ঐচ্ছিক
ক্রোম ৯৯+callbackপ্যারামিটারটি দেখতে এইরকম:(response: any) => void
- প্রতিক্রিয়া
যেকোনো
অনুরোধের হ্যান্ডলার দ্বারা প্রেরিত JSON রেসপন্স অবজেক্ট। এক্সটেনশনের সাথে সংযোগ করার সময় কোনো ত্রুটি ঘটলে, প্রমিসটি প্রত্যাখ্যাত হবে।
ফেরত
প্রতিশ্রুতি<যেকোনো>
ক্রোম ৯৯+প্রমিস শুধুমাত্র ম্যানিফেস্ট ভি৩ এবং এর পরবর্তী সংস্করণগুলোতে সমর্থিত, অন্যান্য প্ল্যাটফর্মে কলব্যাক ব্যবহার করতে হবে।
setUpdateUrlData()
chrome.extension.setUpdateUrlData(
data: string,
): void
এক্সটেনশনের আপডেট ইউআরএল-এ ব্যবহৃত 'ap' CGI প্যারামিটারের মান নির্ধারণ করে। ক্রোম এক্সটেনশন গ্যালারিতে হোস্ট করা এক্সটেনশনগুলির ক্ষেত্রে এই মানটি উপেক্ষা করা হয়।
প্যারামিটার
- ডেটা
স্ট্রিং
ইভেন্টগুলি
onRequest
chrome.extension.onRequest.addListener(
callback: function,
)
অনুগ্রহ করে runtime.onMessage ব্যবহার করুন।
এক্সটেনশন প্রসেস বা কন্টেন্ট স্ক্রিপ্ট থেকে কোনো অনুরোধ পাঠানো হলে এটি সক্রিয় হয়।
প্যারামিটার
- কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
- অনুরোধ
যেকোনো
- প্রেরক
- প্রতিক্রিয়া পাঠান
ফাংশন
sendResponseপ্যারামিটারটি দেখতে এইরকম:() => void
onRequestExternal
chrome.extension.onRequestExternal.addListener(
callback: function,
)
অনুগ্রহ করে runtime.onMessageExternal ব্যবহার করুন।
অন্য কোনো এক্সটেনশন থেকে অনুরোধ পাঠানো হলে এটি সক্রিয় হয়।
প্যারামিটার
- কলব্যাক
ফাংশন
callbackপ্যারামিটারটি দেখতে এইরকম:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
- অনুরোধ
যেকোনো
- প্রেরক
- প্রতিক্রিয়া পাঠান
ফাংশন
sendResponseপ্যারামিটারটি দেখতে এইরকম:() => void