chrome.extension

refresh date: 2026-09-25 robots: noindex

ब्यौरा

chrome.extension एपीआई में ऐसी सुविधाएं हैं जिनका इस्तेमाल किसी भी एक्सटेंशन पेज पर किया जा सकता है. इसमें किसी एक्सटेंशन और उसकी कॉन्टेंट स्क्रिप्ट के बीच या एक्सटेंशन के बीच मैसेज भेजने की सुविधा शामिल है. इसके बारे में मैसेज पासिंग में विस्तार से बताया गया है.

टाइप

ViewType

Chrome 44 या इसके बाद का वर्शन

एक्सटेंशन व्यू का टाइप.

Enum

"tab"

"popup"

प्रॉपर्टी

inIncognitoContext

यह गुप्त टैब में चल रही कॉन्टेंट स्क्रिप्ट और गुप्त प्रोसेस में चल रहे एक्सटेंशन पेजों के लिए सही है. यह सिर्फ़ उन एक्सटेंशन पर लागू होता है जिनमें 'split' incognito_behavior है.

टाइप

बूलियन

lastError

≤ MV2 Chrome 58 के बाद से, इस सुविधा का इस्तेमाल नहीं किया जा सकता

कृपया runtime.lastError का इस्तेमाल करें.

अगर किसी एसिंक्रोनस एक्सटेंशन एपीआई की वजह से कोई गड़बड़ी हुई है, तो कॉलबैक के लाइफ़टाइम के लिए सेट करें. अगर कोई गड़बड़ी नहीं हुई है, तो lastError की वैल्यू undefined होगी.

टाइप

ऑब्जेक्ट

प्रॉपर्टी

  • मैसेज

    स्ट्रिंग

    गड़बड़ी की जानकारी.

तरीके

getBackgroundPage()

सिर्फ़ फ़ोरग्राउंड
chrome.extension.getBackgroundPage(): Window | undefined

मौजूदा एक्सटेंशन में चल रहे बैकग्राउंड पेज के लिए, JavaScript 'window' ऑब्जेक्ट दिखाता है. अगर एक्सटेंशन में कोई बैकग्राउंड पेज नहीं है, तो शून्य दिखाता है.

रिटर्न

  • विंडो | undefined

getExtensionTabs()

≤ MV2 सिर्फ़ फ़ोरग्राउंड अब सेवा में नहीं है
chrome.extension.getExtensionTabs(
  windowId?: number,
)
: Window[]

कृपया extension.getViews {type: "tab"} का इस्तेमाल करें.

यह मौजूदा एक्सटेंशन में चल रहे हर टैब के लिए, JavaScript 'window' ऑब्जेक्ट का कलेक्शन दिखाता है. अगर windowId दिया गया है, तो यह सिर्फ़ उस विंडो से अटैच किए गए टैब के 'विंडो' ऑब्जेक्ट दिखाता है.

पैरामीटर

  • windowId

    number ज़रूरी नहीं

रिटर्न

  • Window[]

    ग्लोबल विंडो ऑब्जेक्ट का कलेक्शन

getURL()

≤ MV2 Chrome 58 के बाद से, इस सुविधा का इस्तेमाल नहीं किया जा सकता
chrome.extension.getURL(
  path: string,
)
: string

कृपया runtime.getURL का इस्तेमाल करें.

यह एक्सटेंशन इंस्टॉल डायरेक्ट्री में मौजूद रिलेटिव पाथ को पूरी तरह से मान्य यूआरएल में बदलता है.

पैरामीटर

  • पाथ

    स्ट्रिंग

    किसी एक्सटेंशन में मौजूद संसाधन का पाथ, जो उसकी इंस्टॉल डायरेक्ट्री के हिसाब से बताया गया हो.

रिटर्न

  • स्ट्रिंग

    संसाधन का पूरी तरह से मान्य यूआरएल.

getViews()

सिर्फ़ फ़ोरग्राउंड
chrome.extension.getViews(
  fetchProperties?: object,
)
: Window[]

यह मौजूदा एक्सटेंशन में चल रहे हर पेज के लिए, JavaScript 'window' ऑब्जेक्ट का कलेक्शन दिखाता है.

पैरामीटर

  • fetchProperties

    object ज़रूरी नहीं

    • tabId

      number ज़रूरी नहीं

      Chrome 54+

      टैब आईडी के हिसाब से व्यू ढूंढना. अगर इस फ़ील्ड को शामिल नहीं किया जाता है, तो सभी व्यू दिखाए जाते हैं.

    • टाइप

      ViewType ज़रूरी नहीं है

      किस तरह का व्यू पाना है. अगर इसे शामिल नहीं किया जाता है, तो सभी व्यू दिखते हैं. इनमें बैकग्राउंड पेज और टैब भी शामिल हैं.

    • windowId

      number ज़रूरी नहीं

      वह विंडो जिसमें खोज को सीमित करना है. अगर इसे शामिल नहीं किया जाता है, तो सभी व्यू दिखते हैं.

रिटर्न

  • Window[]

    ग्लोबल ऑब्जेक्ट का कलेक्शन

isAllowedFileSchemeAccess()

वादा
chrome.extension.isAllowedFileSchemeAccess(
  callback?: function,
)
: Promise<boolean>

'file://' स्कीम के लिए, एक्सटेंशन के ऐक्सेस की स्थिति को वापस लाता है. यह सेटिंग, हर एक्सटेंशन के लिए 'फ़ाइल के यूआरएल को ऐक्सेस करने की अनुमति दें' सेटिंग से मेल खाती है. इसे उपयोगकर्ता कंट्रोल करता है. इसे chrome://extensions पेज से ऐक्सेस किया जा सकता है.

पैरामीटर

  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      बूलियन

      अगर एक्सटेंशन 'file://' स्कीम को ऐक्सेस कर सकता है, तो True. अगर ऐसा नहीं है, तो False.

रिटर्न

  • Promise<boolean>

    Chrome 99 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

isAllowedIncognitoAccess()

वादा
chrome.extension.isAllowedIncognitoAccess(
  callback?: function,
)
: Promise<boolean>

इससे गुप्त मोड में एक्सटेंशन के ऐक्सेस की स्थिति का पता चलता है. यह सेटिंग, हर एक्सटेंशन के लिए उपयोगकर्ता के कंट्रोल वाली 'गुप्त मोड में इस्तेमाल करने की अनुमति है' सेटिंग के मुताबिक होती है. इसे chrome://extensions पेज से ऐक्सेस किया जा सकता है.

पैरामीटर

  • कॉलबैक

    function ज़रूरी नहीं

    callback पैरामीटर कुछ ऐसा दिखता है:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      बूलियन

      अगर एक्सटेंशन के पास गुप्त मोड का ऐक्सेस है, तो True. अगर ऐसा नहीं है, तो False.

रिटर्न

  • Promise<boolean>

    Chrome 99 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

sendRequest()

Promise &leq; MV2 अब काम नहीं करता
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)
: Promise<any>

कृपया runtime.sendMessage का इस्तेमाल करें.

एक्सटेंशन में मौजूद अन्य लिसनर को एक अनुरोध भेजता है. यह runtime.connect की तरह है, लेकिन इसमें सिर्फ़ एक अनुरोध भेजा जाता है और जवाब देना ज़रूरी नहीं होता. extension.onRequest इवेंट, एक्सटेंशन के हर पेज पर ट्रिगर होता है.

पैरामीटर

  • extensionId

    string ज़रूरी नहीं

    उस एक्सटेंशन का आईडी जिससे आपको कनेक्ट करना है. अगर इसे शामिल नहीं किया जाता है, तो डिफ़ॉल्ट रूप से आपका अपना एक्सटेंशन इस्तेमाल किया जाएगा.

  • CANNOT TRANSLATE

    कोई

  • कॉलबैक

    function ज़रूरी नहीं

    Chrome 99 या इसके बाद का वर्शन

    callback पैरामीटर कुछ ऐसा दिखता है:

    (response: any) => void

    • जवाब

      कोई

      अनुरोध को हैंडल करने वाले व्यक्ति या सिस्टम से भेजा गया JSON रिस्पॉन्स ऑब्जेक्ट. अगर एक्सटेंशन से कनेक्ट करते समय कोई गड़बड़ी होती है, तो प्रॉमिस को अस्वीकार कर दिया जाएगा.

रिटर्न

  • <any> प्रॉमिस

    Chrome 99 या इसके बाद का वर्शन

    प्रॉमिस सिर्फ़ Manifest V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)
: void

यह एक्सटेंशन के अपडेट यूआरएल में इस्तेमाल किए गए ap सीजीआई पैरामीटर की वैल्यू सेट करता है. Chrome एक्सटेंशन गैलरी में होस्ट किए गए एक्सटेंशन के लिए, इस वैल्यू को अनदेखा कर दिया जाता है.

पैरामीटर

  • डेटा

    स्ट्रिंग

इवेंट

onRequest

&leq; MV2 अब काम नहीं करता
chrome.extension.onRequest.addListener(
  callback: function,
)

कृपया runtime.onMessage का इस्तेमाल करें.

यह तब ट्रिगर होता है, जब किसी एक्सटेंशन प्रोसेस या कॉन्टेंट स्क्रिप्ट से कोई अनुरोध भेजा जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर कुछ ऐसा दिखता है:

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • CANNOT TRANSLATE

      कोई

    • ईमेल भेजने वाला व्यक्ति
    • sendResponse

      फ़ंक्शन

      sendResponse पैरामीटर कुछ ऐसा दिखता है:

      () => void

onRequestExternal

&leq; MV2 अब काम नहीं करता
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

कृपया runtime.onMessageExternal का इस्तेमाल करें.

यह तब ट्रिगर होता है, जब किसी दूसरे एक्सटेंशन से अनुरोध भेजा जाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर कुछ ऐसा दिखता है:

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • CANNOT TRANSLATE

      कोई

    • ईमेल भेजने वाला व्यक्ति
    • sendResponse

      फ़ंक्शन

      sendResponse पैरामीटर कुछ ऐसा दिखता है:

      () => void