Synchrone XMLHTTPRequest() niet toestaan bij het sluiten van een pagina
Chrome staat nu geen synchrone aanroepen van XMLHTTPRequest()
toe tijdens het sluiten van de pagina wanneer de pagina wordt weggenavigeerd of door de gebruiker wordt gesloten. Dit geldt voor beforeunload
, unload
, pagehide
en visibilitychange
.
Om ervoor te zorgen dat gegevens naar de server worden verzonden wanneer een pagina wordt verwijderd, raden we sendBeacon()
of Fetch
keep-alive
aan. Voorlopig kunnen zakelijke gebruikers de beleidsvlag AllowSyncXHRInPageDismissal
gebruiken en kunnen ontwikkelaars de oorspronkelijke proefvlag allow-sync-xhr-in-page-dismissal
gebruiken om synchrone XHR-verzoeken toe te staan tijdens het verwijderen van de pagina. Dit is een tijdelijke 'opt-out'-maatregel en we verwachten deze vlag in Chrome 88 te verwijderen.
Voor meer informatie hierover en de alternatieven, zie Synchrone XMLHTTPRequest() niet toestaan tijdens het sluiten van een pagina .
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
FTP-ondersteuning is beëindigd
De huidige FTP-implementatie in Chrome biedt geen ondersteuning voor gecodeerde verbindingen (FTPS) en ook geen proxy's. Het gebruik van FTP in de browser is zo laag dat het niet langer rendabel is om te investeren in het verbeteren van de bestaande FTP-client. Bovendien zijn er meer capabele FTP-clients beschikbaar op alle betrokken platforms.
Chrome 72 heeft de ondersteuning verwijderd voor het ophalen van documentsubbronnen via FTP en het weergeven van FTP-bronnen op het hoogste niveau. Momenteel resulteert het navigeren naar FTP-URL's in het weergeven van een directorylijst of een download, afhankelijk van het type bron. Een bug in Google Chrome 74 en later resulteerde in het wegvallen van de ondersteuning voor toegang tot FTP-URL's via HTTP-proxy's. Proxy-ondersteuning voor FTP is volledig verwijderd in Google Chrome 76.
De overige mogelijkheden van de FTP-implementatie van Google Chrome zijn beperkt tot het weergeven van een directorylijst of het downloaden van een bron via niet-versleutelde verbindingen.
De beëindigingstijdlijn is voorlopig als volgt vastgesteld:
Chrome 80 (stabiel in februari 2020)
FTP is standaard uitgeschakeld voor niet-zakelijke clients , maar kan worden ingeschakeld met de opdrachtregelvlaggen --enable-ftp
of --enable-features=FtpProtocol
. Als alternatief kan het worden ingeschakeld met de optie #enable-ftp
op chrome://flags.
Chrome 81 (stabiel in maart 2020)
FTP is standaard uitgeschakeld voor alle Chrome-installaties , maar kan worden ingeschakeld met de opdrachtregelvlaggen --enable-ftp
of --enable-features=FtpProtocol
.
Chrome 82 (stabiel in april 2020)
FTP-ondersteuning wordt volledig verwijderd.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Sta geen pop-ups toe tijdens het verwijderen van de pagina
Pagina's gebruiken mogelijk niet langer window.open()
om een nieuwe pagina te openen tijdens het verwijderen. De Chrome-pop-upblokkering verbood dit al, maar nu is het verboden, ongeacht of de pop-upblokkering is ingeschakeld.
Bedrijven kunnen de beleidsvlag AllowPopupsDuringPageUnload
gebruiken om pop-ups tijdens het verwijderen toe te staan. Chrome verwacht deze vlag in Chrome 82 te verwijderen.
Intentie om te verwijderen | Chromestatustracker | Chroombug
Niet-origin-clean ImageBitmap-serialisatie en overdracht verwijderd
Er zullen nu fouten optreden wanneer een script probeert een niet-originele ImageBitmap te serialiseren of over te dragen. Een niet-origin-clean ImageBitmap is een ImageBitmap die gegevens bevat van cross-cross-origin-afbeeldingen die niet zijn geverifieerd door CORS-logica.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Protocolafhandeling vereist nu een veilige context
De methoden registerProtocolHandler()
en unregisterProtocolHandler()
vereisen nu een veilige context. Deze methoden zijn in staat clientstatussen zodanig te herconfigureren dat ze de overdracht van potentieel gevoelige gegevens via een netwerk mogelijk maken.
De methode registerProtocolHandler()
geeft een webpagina een mechanisme om zichzelf te registreren om een protocol af te handelen nadat een gebruiker toestemming heeft gegeven. Een webgebaseerde e-mailtoepassing zou zich bijvoorbeeld kunnen registreren om het mailto:
-schema af te handelen. Met de overeenkomstige methode unregisterProtocolHandler()
kan een site de protocolafhandelingsregistratie verlaten.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Webcomponenten v0 verwijderd
Webcomponenten v0 zijn nu verwijderd uit Chrome. De Web Components v1 API's zijn een webplatformstandaard die wordt geleverd in Chrome, Safari, Firefox en (binnenkort) Edge. Voor hulp bij het upgraden leest u Update van webcomponenten: meer tijd om te upgraden naar v1 API's . De volgende functies zijn nu verwijderd. Deze beëindiging heeft betrekking op de onderstaande items.
Aangepaste elementen
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
HTML-importen
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Schaduw-DOM
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Verwijder -webkit-appearance:knop voor willekeurige elementen
Wijzigingen -webkit-appearance:button
zodat deze alleen werkt met de knoppen <button>
en <input>
. Als button
is opgegeven voor een niet-ondersteund element, heeft het element de standaarduiterlijk. Alle andere zoekwoorden -webkit-appearance
hebben al een dergelijke beperking.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Beëindigingsbeleid
Om het platform gezond te houden, verwijderen we soms API's van het webplatform die hun beloop hebben gehad. Er kunnen veel redenen zijn waarom we een API zouden verwijderen, zoals:
- Ze worden vervangen door nieuwere API's.
- Ze worden bijgewerkt om wijzigingen in de specificaties weer te geven om afstemming en consistentie met andere browsers te bewerkstelligen.
- Het zijn vroege experimenten die nooit tot bloei zijn gekomen in andere browsers en die dus de ondersteuningslast voor webontwikkelaars kunnen vergroten.
Sommige van deze wijzigingen zullen gevolgen hebben voor een zeer klein aantal sites. Om problemen van tevoren op te lossen, proberen we ontwikkelaars hiervan vooraf op de hoogte te stellen, zodat ze de vereiste wijzigingen kunnen aanbrengen om hun sites draaiende te houden.
Chrome heeft momenteel een proces voor beëindiging en verwijdering van API's , in essentie:
- Kondig het aan op de blink-dev mailinglijst.
- Stel waarschuwingen in en geef tijdschalen in de Chrome DevTools Console wanneer er gebruik wordt gedetecteerd op de pagina.
- Wacht, controleer en verwijder de functie zodra het gebruik afneemt.
Je kunt een lijst met alle verouderde functies vinden op chromestatus.com met behulp van het verouderde filter en verwijderde functies door het verwijderde filter toe te passen. We zullen ook proberen enkele van de veranderingen, redeneringen en migratiepaden in deze berichten samen te vatten.
,Synchrone XMLHTTPRequest() niet toestaan bij het sluiten van een pagina
Chrome staat nu geen synchrone aanroepen van XMLHTTPRequest()
toe tijdens het sluiten van de pagina wanneer de pagina wordt weggenavigeerd of door de gebruiker wordt gesloten. Dit geldt voor beforeunload
, unload
, pagehide
en visibilitychange
.
Om ervoor te zorgen dat gegevens naar de server worden verzonden wanneer een pagina wordt verwijderd, raden we sendBeacon()
of Fetch
keep-alive
aan. Voorlopig kunnen zakelijke gebruikers de beleidsvlag AllowSyncXHRInPageDismissal
gebruiken en kunnen ontwikkelaars de oorspronkelijke proefvlag allow-sync-xhr-in-page-dismissal
gebruiken om synchrone XHR-verzoeken toe te staan tijdens het verwijderen van de pagina. Dit is een tijdelijke 'opt-out'-maatregel en we verwachten deze vlag in Chrome 88 te verwijderen.
Voor meer informatie hierover en de alternatieven, zie Synchrone XMLHTTPRequest() niet toestaan tijdens het sluiten van een pagina .
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
FTP-ondersteuning is beëindigd
De huidige FTP-implementatie in Chrome biedt geen ondersteuning voor gecodeerde verbindingen (FTPS) en ook geen proxy's. Het gebruik van FTP in de browser is zo laag dat het niet langer rendabel is om te investeren in het verbeteren van de bestaande FTP-client. Bovendien zijn er meer capabele FTP-clients beschikbaar op alle betrokken platforms.
Chrome 72 heeft de ondersteuning verwijderd voor het ophalen van documentsubbronnen via FTP en het weergeven van FTP-bronnen op het hoogste niveau. Momenteel resulteert het navigeren naar FTP-URL's in het weergeven van een directorylijst of een download, afhankelijk van het type bron. Een bug in Google Chrome 74 en later resulteerde in het wegvallen van de ondersteuning voor toegang tot FTP-URL's via HTTP-proxy's. Proxy-ondersteuning voor FTP is volledig verwijderd in Google Chrome 76.
De overige mogelijkheden van de FTP-implementatie van Google Chrome zijn beperkt tot het weergeven van een directorylijst of het downloaden van een bron via niet-gecodeerde verbindingen.
De beëindigingstijdlijn is voorlopig als volgt vastgesteld:
Chrome 80 (stabiel in februari 2020)
FTP is standaard uitgeschakeld voor niet-zakelijke clients , maar kan worden ingeschakeld met de opdrachtregelvlaggen --enable-ftp
of --enable-features=FtpProtocol
. Als alternatief kan het worden ingeschakeld met de optie #enable-ftp
op chrome://flags.
Chrome 81 (stabiel in maart 2020)
FTP is standaard uitgeschakeld voor alle Chrome-installaties , maar kan worden ingeschakeld met de opdrachtregelvlaggen --enable-ftp
of --enable-features=FtpProtocol
.
Chrome 82 (stabiel in april 2020)
FTP-ondersteuning wordt volledig verwijderd.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Sta geen pop-ups toe tijdens het verwijderen van de pagina
Pagina's gebruiken mogelijk niet langer window.open()
om een nieuwe pagina te openen tijdens het verwijderen. De Chrome-pop-upblokkering verbood dit al, maar nu is het verboden, ongeacht of de pop-upblokkering is ingeschakeld.
Bedrijven kunnen de beleidsvlag AllowPopupsDuringPageUnload
gebruiken om pop-ups tijdens het verwijderen toe te staan. Chrome verwacht deze vlag in Chrome 82 te verwijderen.
Intentie om te verwijderen | Chromestatustracker | Chroombug
Niet-origin-clean ImageBitmap-serialisatie en overdracht verwijderd
Er zullen nu fouten optreden wanneer een script probeert een niet-originele ImageBitmap te serialiseren of over te dragen. Een niet-origin-clean ImageBitmap is een ImageBitmap die gegevens bevat van cross-cross-origin-afbeeldingen die niet zijn geverifieerd door CORS-logica.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Protocolafhandeling vereist nu een veilige context
De methoden registerProtocolHandler()
en unregisterProtocolHandler()
vereisen nu een veilige context. Deze methoden zijn in staat clientstatussen zodanig te herconfigureren dat ze de overdracht van potentieel gevoelige gegevens via een netwerk mogelijk maken.
De methode registerProtocolHandler()
geeft een webpagina een mechanisme om zichzelf te registreren om een protocol af te handelen nadat een gebruiker toestemming heeft gegeven. Een webgebaseerde e-mailtoepassing zou zich bijvoorbeeld kunnen registreren om het mailto:
-schema af te handelen. Met de overeenkomstige methode unregisterProtocolHandler()
kan een site de protocolafhandelingsregistratie verlaten.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Webcomponenten v0 verwijderd
Webcomponenten v0 zijn nu verwijderd uit Chrome. De Web Components v1 API's zijn een webplatformstandaard die wordt geleverd in Chrome, Safari, Firefox en (binnenkort) Edge. Voor hulp bij het upgraden leest u Update van webcomponenten: meer tijd om te upgraden naar v1 API's . De volgende functies zijn nu verwijderd. Deze beëindiging heeft betrekking op de onderstaande items.
Aangepaste elementen
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
HTML-importen
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Schaduw DOM
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Verwijder -webkit-appearance:knop voor willekeurige elementen
Wijzigingen -webkit-appearance:button
zodat deze alleen werkt met de knoppen <button>
en <input>
. Als button
is opgegeven voor een niet-ondersteund element, heeft het element de standaarduiterlijk. Alle andere zoekwoorden -webkit-appearance
hebben al een dergelijke beperking.
Intentie om te verwijderen | Chrome-platformstatus | Chroombug
Beëindigingsbeleid
Om het platform gezond te houden, verwijderen we soms API's van het webplatform die hun beloop hebben gehad. Er kunnen veel redenen zijn waarom we een API zouden verwijderen, zoals:
- Ze worden vervangen door nieuwere API's.
- Ze worden bijgewerkt om wijzigingen in de specificaties weer te geven om afstemming en consistentie met andere browsers te bewerkstelligen.
- Het zijn vroege experimenten die nooit tot bloei zijn gekomen in andere browsers en die dus de ondersteuningslast voor webontwikkelaars kunnen vergroten.
Sommige van deze wijzigingen zullen gevolgen hebben voor een zeer klein aantal sites. Om problemen van tevoren op te lossen, proberen we ontwikkelaars hiervan vooraf op de hoogte te stellen, zodat ze de vereiste wijzigingen kunnen aanbrengen om hun sites draaiende te houden.
Chrome heeft momenteel een proces voor beëindiging en verwijdering van API's , in essentie:
- Kondig het aan op de blink-dev mailinglijst.
- Stel waarschuwingen in en geef tijdschalen in de Chrome DevTools Console wanneer er gebruik wordt gedetecteerd op de pagina.
- Wacht, controleer en verwijder de functie zodra het gebruik afneemt.
Je kunt een lijst met alle verouderde functies vinden op chromestatus.com met behulp van het verouderde filter en verwijderde functies door het verwijderde filter toe te passen. We zullen ook proberen enkele van de veranderingen, redeneringen en migratiepaden in deze berichten samen te vatten.