Non consentire XMLHTTPRequest() sincrono nella chiusura di pagine
Ora Chrome non consente le chiamate sincrone a XMLHTTPRequest()
durante la pagina
quando la pagina viene chiusa dall'utente o viene chiusa.
Si applica a beforeunload
, unload
, pagehide
e visibilitychange
.
Per assicurarti che i dati vengano inviati al server quando una pagina viene caricata, ti consigliamo
sendBeacon()
o Fetch
keep-alive
. Per il momento, gli utenti aziendali possono utilizzare
AllowSyncXHRInPageDismissal
flag del criterio e gli sviluppatori possono utilizzare l'origine
flag di prova allow-sync-xhr-in-page-dismissal
per consentire richieste XHR sincrone
durante l'unload della pagina. Si tratta di una disattivazione temporanea misurare e prevediamo di
rimuovere questo flag in Chrome 88.
Per maggiori dettagli su questa funzionalità e sulle alternative, consulta la sezione Non consentire la funzione XMLHTTPRequest() sincrona durante la chiusura di una pagina.
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
Supporto dell'FTP deprecato
L'attuale implementazione dell'FTP in Chrome non supporta la crittografia (FTPS) o proxy. L'utilizzo dell'FTP nel browser è sufficientemente basso che non è più possibile investire per migliorare il client FTP esistente. Nella Inoltre, sono disponibili client FTP più avanzati su tutte le piattaforme interessate.
Chrome 72 ha rimosso il supporto per il recupero delle sottorisorse dei documenti tramite FTP e il rendering delle risorse FTP di primo livello. Stai visualizzando i risultati per gli URL FTP nella visualizzazione di un elenco di directory o di un download a seconda del tipo di risorsa. Un bug in Google Chrome 74 e versioni successive ha causato l'interruzione del supporto per l'accesso URL FTP su proxy HTTP. Il supporto proxy per l'FTP è stato rimosso completamente in Google Chrome 76.
Le restanti funzionalità dell'implementazione FTP di Google Chrome sono limitate visualizzare un elenco di directory o scaricare una risorsa e non crittografate.
Le tempistiche del ritiro sono stimate come segue:
Chrome 80 (stabile a febbraio 2020)
L'FTP è disattivato per impostazione predefinita per i client non aziendali, ma potrebbe essere attivato
utilizzando --enable-ftp
o --enable-features=FtpProtocol
dalla riga di comando. In alternativa, può essere attivato utilizzando #enable-ftp
su chrome://flags.
Chrome 81 (stabile a marzo 2020)
L'FTP è disattivato per impostazione predefinita per tutte le installazioni di Chrome, ma potrebbe essere attivato
utilizzando --enable-ftp
o --enable-features=FtpProtocol
dalla riga di comando.
Chrome 82 (stabile ad aprile 2020)
Il supporto dell'FTP verrà rimosso completamente.
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
Non consentire i popup durante l'unload della pagina
Le pagine non possono più utilizzare window.open()
per aprire una nuova pagina durante l'unload. La
Il blocco popup di Chrome lo aveva già vietato, ma ora non è consentito
se il blocco popup è attivo.
Le aziende possono utilizzare il flag del criterio AllowPopupsDuringPageUnload
per consentire
i popup durante l'unload. Chrome prevede di rimuovere questo flag nella versione 82 di Chrome.
Intenzione di rimozione | Tracker dello stato di Chrome | Bug di Chromium
Serializzazione e trasferimento di ImageBitmap non puliti dall'origine rimossi
Ora verranno generati errori quando uno script tenterà di serializzare o trasferire un ImageBitmap non pulita dall'origine. Un'immagine ImageBitmap non pulita dall'origine è quella che contiene dati di immagini multiorigine non verificati dalla logica CORS.
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
La gestione del protocollo ora richiede un contesto sicuro
I metodi registerProtocolHandler()
e unregisterProtocolHandler()
ora
richiedono un contesto sicuro. Questi metodi sono in grado di riconfigurare gli stati del client
in modo tale da consentire la trasmissione di dati potenzialmente sensibili
in ogni rete.
Il metodo registerProtocolHandler()
offre a una pagina web un meccanismo per registrare
per gestire un protocollo dopo che l'utente ha dato il consenso. Ad esempio, un modello
un'applicazione email potrebbe registrarsi per gestire lo schema mailto:
. Il corrispondente
Il metodo unregisterProtocolHandler()
consente a un sito di abbandonare la propria
e la registrazione per la gestione
del protocollo.
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
Web Components v0 rimosso
Web Components v0 è stato rimosso da Chrome. Le API Web Components v1 sono un standard della piattaforma web disponibile in Chrome, Safari, Firefox e a breve perimetrali. Per indicazioni sull'upgrade, leggi l'articolo Aggiornamento dei componenti web: più tempo per l'upgrade alle API v1. La sono state rimosse le seguenti funzionalità. Questo ritiro riguarda gli articoli elencati di seguito.
Elementi personalizzati
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
Importazioni HTML
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
DOM shadow
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
Rimuovi -webkit-appearance:button per gli elementi arbitrari
Modifica -webkit-appearance:button
affinché funzioni solo con <button>
e <input>
pulsanti. Se button
viene specificato per un elemento non supportato, l'elemento ha
l'aspetto predefinito. Tutte le altre parole chiave (-webkit-appearance
) hanno già
tale restrizione.
Intenzione di rimozione | Stato della piattaforma Chrome | Bug di Chromium
Norme sul ritiro
Per mantenere l'integrità della piattaforma, a volte rimuoviamo dalla piattaforma web le API che hanno seguito il loro corso. Ci possono essere molti motivi per cui dovresti rimuovere un dell'API, ad esempio:
- Sono sostituite dalle API più recenti.
- Vengono aggiornati per riflettere le modifiche alle specifiche al fine di offrire allineamento e coerenza con gli altri browser.
- Si tratta dei primi esperimenti che non si sono mai portati a termine in altri browser e, di conseguenza, possono aumentare la mole di assistenza da parte degli sviluppatori web.
Alcune di queste modifiche avranno effetto su un numero molto ridotto di siti. Per ridurre in anticipo i problemi, cerchiamo di dare agli sviluppatori un preavviso in modo che possano apportare le modifiche necessarie per mantenere i loro siti operativi.
Al momento Chrome prevede una procedura per il ritiro e la rimozione delle API, che consiste essenzialmente nel seguente modo:
- Pubblica un annuncio nella mailing list blink-dev.
- Imposta avvisi e assegna scale temporali nella console Chrome DevTools quando viene rilevato un utilizzo nella pagina.
- Attendi, monitora e rimuovi la funzionalità quando l'utilizzo cala.
Puoi trovare un elenco di tutte le funzionalità ritirate su chromestatus.com utilizzando il filtro deprecato e con le funzionalità rimosse applicando il filtro rimosso. Cercheremo anche di riassumere alcuni dei cambiamenti, il ragionamento e i percorsi di migrazione in questi post.