La maggior parte delle estensioni ha bisogno di accedere a una o più API di estensioni di Chrome per funzionare. Questo riferimento all'API descrive le API disponibili per l'utilizzo nelle estensioni e presenta casi d'uso di esempio.
Funzionalità comuni dell'API Extensions
Un'API Extensions è costituita da uno spazio dei nomi contenente metodi e proprietà per eseguire il lavoro delle estensioni e, in genere, ma non sempre, campi manifest per il file manifest.json
. Ad esempio, lo spazio dei nomi chrome.action
richiede un oggetto "action"
nel manifest. Molte API richiedono anche autorizzazioni nel file manifest.
I metodi nelle API di estensione sono a sincronia asincrona, se non diversamente indicato. I metodi asincroni restituiscono immediatamente il risultato, senza attendere la fine dell'operazione che li chiama. Utilizza le promise per ottenere i risultati di questi metodi asincroni.
API di estensioni di Chrome
- accessibilityFeatures
-
Utilizza l'API
chrome.accessibilityFeatures
per gestire le funzionalità di accessibilità di Chrome. Questa API si basa sul prototipo ChromeSetting dell'API di tipo per ottenere e impostare le singole funzionalità di accessibilità. Per ottenere gli stati delle funzionalità, l'estensione deve richiedere l'autorizzazioneaccessibilityFeatures.read
. Per modificare lo stato della funzionalità, l'estensione ha bisogno dell'autorizzazioneaccessibilityFeatures.modify
. Tieni presente cheaccessibilityFeatures.modify
non implica l'autorizzazioneaccessibilityFeatures.read
. - action
-
Chrome 88 e versioni successive MV3 e versioni successive
Utilizza l'API
chrome.action
per controllare l'icona dell'estensione nella barra degli strumenti di Google Chrome. - alarms
-
Utilizza l'API
chrome.alarms
per pianificare l'esecuzione del codice periodicamente o in un momento specifico in futuro. - audio
-
Chrome 59 e versioni successive Solo ChromeOS
L'API
chrome.audio
viene fornita per consentire agli utenti di ottenere informazioni e controllare i dispositivi audio collegati al sistema. Questa API è attualmente disponibile solo in modalità kiosk per ChromeOS. - preferiti
-
Utilizza l'API
chrome.bookmarks
per creare, organizzare e manipolare i preferiti. Consulta anche Pagina di override, che puoi utilizzare per creare una pagina Gestione preferiti personalizzata. - browsingData
-
Utilizza l'API
chrome.browsingData
per rimuovere i dati di navigazione dal profilo locale di un utente. - certificateProvider
-
Chrome 46 e versioni successive Solo ChromeOS
Utilizza questa API per esporre alla piattaforma i certificati che possono essere utilizzati per le autenticazioni TLS.
- comandi
-
Utilizza l'API Commands per aggiungere scorciatoie da tastiera che attivano azioni nell'estensione, ad esempio un'azione per aprire l'azione del browser o inviare un comando all'estensione.
- contentSettings
-
Utilizza l'API
chrome.contentSettings
per modificare le impostazioni che controllano se i siti web possono utilizzare funzioni come cookie, JavaScript e plug-in. In termini più generali, le impostazioni dei contenuti ti consentono di personalizzare il comportamento di Chrome in base al sito, anziché a livello globale. - contextMenus
-
Utilizza l'API
chrome.contextMenus
per aggiungere elementi al menu contestuale di Google Chrome. Puoi scegliere a quali tipi di oggetti applicare le aggiunte al menu contestuale, ad esempio immagini, link ipertestuali e pagine. - cookie
-
Utilizza l'API
chrome.cookies
per eseguire query e modificare i cookie e per ricevere una notifica quando cambiano. - debugger
-
L'API
chrome.debugger
funge da trasporto alternativo per il protocollo di debug remoto di Chrome. Utilizzachrome.debugger
per collegarti a una o più schede per analizzare l'interazione di rete, eseguire il debug di JavaScript, modificare il DOM e il CSS e altro ancora. Utilizza la proprietàDebuggee
tabId
per scegliere come target le schede consendCommand
e instradare gli eventi in base atabId
dai callbackonEvent
. - declarativeContent
-
Utilizza l'API
chrome.declarativeContent
per eseguire azioni in base ai contenuti di una pagina, senza richiedere l'autorizzazione per leggere i contenuti della pagina. - declarativeNetRequest
-
Chrome 84 e versioni successive
L'API
chrome.declarativeNetRequest
viene utilizzata per bloccare o modificare le richieste di rete specificando regole dichiarative. In questo modo, le estensioni possono modificare le richieste di rete senza intercettarle e visualizzarne i contenuti, garantendo una maggiore privacy. - desktopCapture
-
L'API Desktop Capture acquisisce i contenuti della schermata, di singole finestre o di singole schede.
- devtools.inspectedWindow
-
Utilizza l'API
chrome.devtools.inspectedWindow
per interagire con la finestra ispezionata: ottieni l'ID scheda per la pagina ispezionata, valuta il codice nel contesto della finestra ispezionata, ricarica la pagina o ottieni l'elenco delle risorse all'interno della pagina. - devtools.network
-
Utilizza l'API
chrome.devtools.network
per recuperare le informazioni sulle richieste di rete visualizzate dagli Strumenti per sviluppatori nel riquadro Rete. - devtools.panels
-
Utilizza l'API
chrome.devtools.panels
per integrare l'estensione nell'interfaccia utente della finestra Strumenti per gli sviluppatori: crea i tuoi riquadri, accedi a quelli esistenti e aggiungi barre laterali. - devtools.performance
-
Chrome 129 e versioni successive
Utilizza l'API
chrome.devtools.performance
per ascoltare gli aggiornamenti dello stato della registrazione nel riquadro Prestazioni di DevTools. - devtools.recorder
-
Chrome 105 e versioni successive
Utilizza l'API
chrome.devtools.recorder
per personalizzare il riquadro Registratore in DevTools. - dns
-
Canale per sviluppatori
Utilizza l'API
chrome.dns
per la risoluzione DNS. - documentScan
-
Chrome 44 e versioni successive Solo ChromeOS
Utilizza l'API
chrome.documentScan
per rilevare e recuperare le immagini dagli scanner per documenti collegati. - dom
-
Chrome 88 e versioni successive
Utilizza l'API
chrome.dom
per accedere ad API DOM speciali per le Estensioni - download
-
Utilizza l'API
chrome.downloads
per avviare, monitorare, manipolare e cercare i download in modo programmatico. - enterprise.deviceAttributes
-
Utilizza l'API
chrome.enterprise.deviceAttributes
per leggere gli attributi del dispositivo. Nota: questa API è disponibile solo per le estensioni installate in modo forzato secondo i criteri aziendali. - enterprise.hardwarePlatform
-
Chrome 71 e versioni successive Richiede criteri
Utilizza l'API
chrome.enterprise.hardwarePlatform
per ottenere il produttore e il modello della piattaforma hardware in cui è in esecuzione il browser. Nota: questa API è disponibile solo per le estensioni installate in base ai criteri aziendali. - enterprise.login
-
Utilizza l'API
chrome.enterprise.login
per uscire dalle sessioni Ospite gestite. Nota: questa API è disponibile solo per le estensioni installate in base ai criteri aziendali nelle sessioni Ospite gestite di ChromeOS. - enterprise.networkingAttributes
-
Utilizza l'API
chrome.enterprise.networkingAttributes
per leggere informazioni sulla tua rete attuale. Nota: questa API è disponibile solo per le estensioni installate in modo forzato secondo i criteri aziendali. - enterprise.platformKeys
-
Solo ChromeOS Richiede criteri
Utilizza l'API
chrome.enterprise.platformKeys
per generare chiavi e installare certificati per queste chiavi. I certificati verranno gestiti dalla piattaforma e potranno essere utilizzati per l'autenticazione TLS, l'accesso alla rete o da un'altra estensione tramite chrome.platformKeys. - eventi
-
Lo spazio dei nomi
chrome.events
contiene tipi comuni utilizzati dalle API per inviare eventi per avvisarti quando accade qualcosa di interessante. - extension
-
L'API
chrome.extension
include utilità che possono essere utilizzate da qualsiasi pagina dell'estensione. Include il supporto per lo scambio di messaggi tra un'estensione e i relativi script di contenuti o tra estensioni, come descritto in dettaglio in Passaggio di messaggi. - extensionTypes
-
L'API
chrome.extensionTypes
contiene dichiarazioni di tipo per le estensioni di Chrome. - fileBrowserHandler
-
Solo ChromeOS Solo primo piano
Utilizza l'API
chrome.fileBrowserHandler
per estendere il browser dei file di ChromeOS. Ad esempio, puoi utilizzare questa API per consentire agli utenti di caricare file sul tuo sito web. - fileSystemProvider
-
Solo ChromeOS
Utilizza l'API
chrome.fileSystemProvider
per creare file system accessibili dal gestore di file su ChromeOS. - fontSettings
-
Utilizza l'API
chrome.fontSettings
per gestire le impostazioni dei caratteri di Chrome. - gcm
-
Utilizza
chrome.gcm
per consentire ad app ed estensioni di inviare e ricevere messaggi tramite Firebase Cloud Messaging (FCM). - history
-
Utilizza l'API
chrome.history
per interagire con il record delle pagine visitate del browser. Puoi aggiungere, rimuovere e eseguire query sugli URL nella cronologia del browser. Per sostituire la pagina della cronologia con la tua versione, vedi Sostituisci pagine. - i18n
-
Utilizza l'infrastruttura
chrome.i18n
per implementare l'internazionalizzazione nell'intera app o nell'intera estensione. - identity
-
Utilizza l'API
chrome.identity
per ottenere token di accesso OAuth2. - idle
-
Utilizza l'API
chrome.idle
per rilevare quando cambia lo stato di inattività della macchina. - input.ime
-
Solo ChromeOS
Utilizza l'API
chrome.input.ime
per implementare un IME personalizzato per ChromeOS. In questo modo, l'estensione può gestire le battute, impostare la composizione e gestire la finestra dei candidati. - instanceID
-
Chrome 44 e versioni successive
Usa
chrome.instanceID
per accedere al servizio ID istanza. - loginState
-
Chrome 78 e versioni successive Solo ChromeOS
Utilizza l'API
chrome.loginState
per leggere e monitorare lo stato di accesso. - video
-
L'API
chrome.management
fornisce modi per gestire le app e le estensioni installate. - notifications
-
Utilizza l'API
chrome.notifications
per creare notifiche avanzate utilizzando i modelli e mostrarle agli utenti nella barra delle app. - offscreen
-
Chrome 109 e versioni successive MV3 e versioni successive
Utilizza l'API
offscreen
per creare e gestire i documenti offscreen. - omnibox
-
L'API omnibox ti consente di registrare una parola chiave nella barra degli indirizzi di Google Chrome, nota anche come omnibox.
- pageCapture
-
Utilizza l'API
chrome.pageCapture
per salvare una scheda come MHTML. - autorizzazioni
-
Utilizza l'API
chrome.permissions
per richiedere le autorizzazioni facoltative dichiarate in fase di esecuzione anziché di installazione, in modo che gli utenti comprendano perché sono necessarie e ne concedano solo quelle necessarie. - platformKeys
-
Chrome 45 e versioni successive Solo ChromeOS
Utilizza l'API
chrome.platformKeys
per accedere ai certificati client gestiti dalla piattaforma. Se l'utente o i criteri concedono l'autorizzazione, un'estensione può utilizzare un certificato di questo tipo nel proprio protocollo di autenticazione personalizzato. Ad esempio, consente l'utilizzo di certificati gestiti dalla piattaforma nelle VPN di terze parti (vedi chrome.vpnProvider). - power
-
Utilizza l'API
chrome.power
per ignorare le funzionalità di gestione dell'alimentazione del sistema. - printerProvider
-
Chrome 44 e versioni successive
L'API
chrome.printerProvider
espone gli eventi utilizzati dal gestore della stampa per eseguire query sulle stampanti controllate dalle estensioni, per eseguire query sulle relative funzionalità e per inviare processi di stampa a queste stampanti. - stampa
-
Chrome 81 e versioni successive Solo ChromeOS
Utilizza l'API
chrome.printing
per inviare processi di stampa alle stampanti installate su Chromebook. - printingMetrics
-
Utilizza l'API
chrome.printingMetrics
per recuperare i dati sull'utilizzo della stampa. - privacy
-
Utilizza l'API
chrome.privacy
per controllare l'utilizzo delle funzionalità di Chrome che possono influire sulla privacy di un utente. Questa API si basa sul prototipo ChromeSetting del tipo API per ottenere e impostare la configurazione di Chrome. - processi
-
Canale per sviluppatori
Utilizza l'API
chrome.processes
per interagire con i processi del browser. - proxy
-
Utilizza l'API
chrome.proxy
per gestire le impostazioni del proxy di Chrome. Questa API si basa sul prototipo ChromeSetting del tipo API per ottenere e impostare la configurazione del proxy. - readingList
-
Chrome 120+ MV3+
Utilizza l'API
chrome.readingList
per leggere e modificare gli elementi dell'elenco di lettura. - runtime
-
Utilizza l'API
chrome.runtime
per recuperare il service worker, restituire i dettagli del manifest e ascoltare e rispondere agli eventi nel ciclo di vita dell'estensione. Puoi anche utilizzare questa API per convertire il percorso relativo degli URL in URL completi. - scripting
-
Chrome 88 e versioni successive MV3 e versioni successive
Utilizza l'API
chrome.scripting
per eseguire script in contesti diversi. - search
-
Chrome 87 e versioni successive
Utilizza l'API
chrome.search
per eseguire ricerche tramite il provider predefinito. - sessions
-
Utilizza l'API
chrome.sessions
per eseguire query e ripristinare schede e finestre da una sessione di navigazione. - sidePanel
-
Chrome 114 e versioni successive MV3 e versioni successive
Utilizza l'API
chrome.sidePanel
per ospitare contenuti nel riquadro laterale del browser insieme ai contenuti principali di una pagina web. - spazio di archiviazione
-
Utilizza l'API
chrome.storage
per archiviare, recuperare e monitorare le modifiche ai dati utente. - system.cpu
-
Utilizza l'API
system.cpu
per eseguire query sui metadati della CPU. - system.display
-
Utilizza l'API
system.display
per eseguire query sui metadati della visualizzazione. - system.memory
-
L'API
chrome.system.memory
. - system.storage
-
Utilizza l'API
chrome.system.storage
per eseguire query sulle informazioni del dispositivo di archiviazione e ricevere una notifica quando un dispositivo di archiviazione rimovibile viene collegato e scollegato. - systemLog
-
Utilizza l'API
chrome.systemLog
per registrare i log di sistema di Chrome dalle estensioni. - tabCapture
-
Utilizza l'API
chrome.tabCapture
per interagire con gli stream multimediali della scheda. - tabGroups
-
Chrome 89 e versioni successive MV3 e versioni successive
Utilizza l'API
chrome.tabGroups
per interagire con il sistema di raggruppamento delle schede del browser. Puoi utilizzare questa API per modificare e riorganizzare i gruppi di schede nel browser. Per raggruppare e separare le schede o per eseguire query sulle schede incluse nei gruppi, utilizza l'APIchrome.tabs
. - tabs
-
Utilizza l'API
chrome.tabs
per interagire con il sistema di schede del browser. Puoi utilizzare questa API per creare, modificare e riorganizzare le schede nel browser. - topSites
-
Utilizza l'API
chrome.topSites
per accedere ai siti principali (ovvero i siti più visitati) visualizzati nella pagina Nuova scheda. Non sono incluse le scorciatoie personalizzate dall'utente. - tts
-
Utilizza l'API
chrome.tts
per riprodurre la sintesi vocale (TTS) sintetizzata. Consulta anche l'APIttsEngine
correlata, che consente a un'estensione di implementare un motore vocale. - ttsEngine
-
Utilizza l'API
chrome.ttsEngine
per implementare un motore di sintesi vocale(TTS) utilizzando un'estensione. Se l'estensione si registra utilizzando questa API, riceverà eventi contenenti un'espressione da pronunciare e altri parametri quando qualsiasi estensione o app Chrome utilizza l'APItts
per generare voce. L'estensione può quindi utilizzare qualsiasi tecnologia web disponibile per sintetizzare e produrre il parlato e inviare nuovamente gli eventi alla funzione di chiamata per segnalare lo stato. - types
-
L'API
chrome.types
contiene dichiarazioni di tipo per Chrome. - userScripts
-
Chrome 120+ MV3+
Utilizza l'API
userScripts
per eseguire script utente nel contesto Script utente. - vpnProvider
-
Chrome 43 e versioni successive Solo ChromeOS
Utilizza l'API
chrome.vpnProvider
per implementare un client VPN. -
Chrome 43 e versioni successive Solo ChromeOS
Utilizza l'API
chrome.wallpaper
per cambiare lo sfondo di ChromeOS. - webAuthenticationProxy
-
Chrome 115 e versioni successive MV3 e versioni successive
L'API
chrome.webAuthenticationProxy
consente al software di desktop remoto in esecuzione su un host remoto di intercettare le richieste dell'API Web Authentication (WebAuthn) per gestirle su un client locale. - webNavigation
-
Utilizza l'API
chrome.webNavigation
per ricevere notifiche sullo stato delle richieste di navigazione in corso. - webRequest
-
Utilizza l'API
chrome.webRequest
per osservare e analizzare il traffico e per intercettare, bloccare o modificare le richieste in corso. - windows
-
Utilizza l'API
chrome.windows
per interagire con le finestre del browser. Puoi utilizzare questa API per creare, modificare e riorganizzare le finestre nel browser.