Einstellungen und Entfernungen in Chrome 80

Joe Medley
Joe Medley

eingestellten Funktionen.

Synchrone XMLHTTPRequest() beim Schließen von Seiten nicht zulassen

In Chrome sind jetzt keine synchronen Aufrufe von XMLHTTPRequest() mehr zulässig, wenn die Seite geschlossen oder vom Nutzer verlassen wird. Dies gilt für beforeunload, unload, pagehide und visibilitychange.

Damit beim Entladen einer Seite Daten an den Server gesendet werden, empfehlen wir sendBeacon() oder Fetch keep-alive. Derzeit können Unternehmensnutzer das Richtlinien-Flag AllowSyncXHRInPageDismissal und Entwickler das Ursprungs-Testflag allow-sync-xhr-in-page-dismissal verwenden, um synchrone XHR-Anfragen beim Entfernen von Seiten zuzulassen. Dies ist eine vorübergehende Deaktivierungsmaßnahme. Wir gehen davon aus, dass dieses Flag in Chrome 88 entfernt wird.

Weitere Informationen zu dieser und den Alternativen finden Sie unter Synchrone XMLHTTPRequest() beim Schließen von Seiten deaktivieren.

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

FTP-Unterstützung eingestellt

Die aktuelle FTP-Implementierung in Chrome unterstützt weder verschlüsselte Verbindungen (FTPS) noch Proxys. Die Nutzung von FTP im Browser ist so gering, dass es nicht mehr sinnvoll ist, in die Verbesserung des vorhandenen FTP-Clients zu investieren. Außerdem sind auf allen betroffenen Plattformen leistungsfähigere FTP-Clients verfügbar.

In Chrome 72 wurde die Unterstützung für das Abrufen von Dokumentunterressourcen über FTP und das Rendern von FTP-Ressourcen der obersten Ebene entfernt. Derzeit wird beim Aufrufen von FTP-URLs je nach Ressourcentyp ein Verzeichnis oder ein Download angezeigt. Aufgrund eines Fehlers in Google Chrome 74 und höher wurde die Unterstützung für den Zugriff auf FTP-URLs über HTTP-Proxys eingestellt. Die Proxyunterstützung für FTP wurde in Google Chrome 76 vollständig entfernt.

Die übrigen Funktionen der FTP-Implementierung von Google Chrome sind auf die Anzeige eines Verzeichnisverzeichnisses oder das Herunterladen einer Ressource über unverschlüsselte Verbindungen beschränkt.

Der Zeitplan für die Einstellung sieht derzeit so aus:

Chrome 80 (stabil seit Februar 2020)

FTP ist für nicht-Enterprise-Clients standardmäßig deaktiviert, kann aber mit den Befehlszeilen-Flags --enable-ftp oder --enable-features=FtpProtocol aktiviert werden. Alternativ kann die Funktion auch über die Option #enable-ftp unter chrome://flags aktiviert werden.

Chrome 81 (stabile Version von März 2020)

FTP ist standardmäßig für alle Chrome-Installationen deaktiviert, kann aber mit den Befehlszeilen-Flags --enable-ftp oder --enable-features=FtpProtocol aktiviert werden.

Chrome 82 (stabile Version im April 2020)

Der FTP-Support wird vollständig entfernt.

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

Pop-ups beim Entfernen von Seiten nicht zulassen

Seiten können window.open() nicht mehr verwenden, um beim Entladen eine neue Seite zu öffnen. Der Chrome-Pop-up-Blocker hat dies bereits verboten, aber jetzt ist es unabhängig davon verboten, ob der Pop-up-Blocker aktiviert ist.

Unternehmen können das Richtlinienflag AllowPopupsDuringPageUnload verwenden, um Pop-ups beim Entladen zuzulassen. Diese Markierung wird voraussichtlich in Chrome 82 entfernt.

Entfernung geplant | Chromestatus-Tracker | Chromium-Fehler

Nicht quellenreine ImageBitmap-Serialisierung und -Übertragung entfernt

Es werden jetzt Fehler ausgegeben, wenn ein Script versucht, eine nicht ursprüngliche ImageBitmap zu serialisieren oder zu übertragen. Eine nicht richtlinienkonforme ImageBitmap enthält Daten aus Cross-Origin-Bildern, die nicht durch die CORS-Logik überprüft werden.

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

Für die Protokollbehandlung ist jetzt ein sicherer Kontext erforderlich

Für die Methoden registerProtocolHandler() und unregisterProtocolHandler() ist jetzt ein sicherer Kontext erforderlich. Mit diesen Methoden können Clientstatus so neu konfiguriert werden, dass die Übertragung potenziell sensibler Daten über ein Netzwerk ermöglicht wird.

Mit der Methode registerProtocolHandler() kann sich eine Webseite registrieren, um ein Protokoll zu verarbeiten, nachdem ein Nutzer seine Einwilligung erteilt hat. Beispielsweise kann eine webbasierte E-Mail-Anwendung für die Verarbeitung des mailto:-Schemas registriert werden. Mit der entsprechenden unregisterProtocolHandler()-Methode kann eine Website die Registrierung für die Protokollbehandlung aufheben.

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

Web Components v0 entfernt

Web Components v0 wurden aus Chrome entfernt. Die Web Components v1 APIs sind ein Webplattformstandard, der in Chrome, Safari, Firefox und (demnächst) Edge verfügbar ist. Eine Anleitung zum Upgrade finden Sie im Hilfeartikel Web Components-Update: Mehr Zeit für die Umstellung auf V1-APIs. Die folgenden Funktionen wurden entfernt. Die Einstellung betrifft die unten aufgeführten Elemente.

Benutzerdefinierte Elemente

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

HTML-Importe

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

Shadow DOM

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

-webkit-appearance:button für beliebige Elemente entfernen

Hiermit wird festgelegt, dass -webkit-appearance:button nur mit den Schaltflächen <button> und <input> funktioniert. Wenn für ein nicht unterstütztes Element button angegeben wird, hat das Element das Standardaussehen. Für alle anderen -webkit-appearance-Keywords gilt diese Einschränkung bereits.

Entfernung geplant | Status der Chrome-Plattform | Chromium-Fehler

Einstellungsrichtlinie

Um die Plattform leistungsfähig zu halten, entfernen wir manchmal APIs von der Webplattform, die nicht mehr benötigt werden. Es kann viele Gründe dafür geben, dass wir eine API entfernen, z. B.:

  • Sie werden durch neuere APIs ersetzt.
  • Sie werden entsprechend den Änderungen an den Spezifikationen aktualisiert, um für Einheitlichkeit mit anderen Browsern zu sorgen.
  • Es handelt sich um frühe Experimente, die in anderen Browsern nie umgesetzt wurden. Dies kann den Supportaufwand für Webentwickler erhöhen.

Einige dieser Änderungen betreffen nur sehr wenige Websites. Um Probleme im Voraus zu vermeiden, informieren wir Entwickler frühzeitig, damit sie die erforderlichen Änderungen vornehmen können, um ihre Websites weiter betreiben zu können.

In Chrome gibt es derzeit ein Verfahren für die Einstellung und Entfernung von APIs, das im Wesentlichen so abläuft:

  • Ankündigung in der blink-dev-Mailingliste.
  • Legen Sie in der Chrome-Entwicklertools-Konsole Warnungen fest und geben Sie Zeitskalen an, wenn auf der Seite eine Nutzung erkannt wird.
  • Warten Sie, beobachten Sie die Nutzung und entfernen Sie die Funktion, sobald sie nicht mehr verwendet wird.

Auf chromestatus.com finden Sie eine Liste aller eingestellten Funktionen, wenn Sie den Filter „Eingestellt“ verwenden. Entfernte Funktionen werden mit dem Filter „Entfernt“ angezeigt. Außerdem werden wir in diesen Beiträgen einige der Änderungen, Gründe und Migrationspfade zusammenfassen.