Einstellungen und Entfernungen in Chrome 80

Joe Medley
Joe Medley

.

Synchrone XMLHTTPRequest() in Seitenablehnung nicht zulassen

Chrome unterbindet jetzt synchrone Aufrufe von XMLHTTPRequest() während des Schließens einer Seite, wenn die Seite verlassen wird oder vom Nutzer geschlossen wird. Dies gilt für beforeunload, unload, pagehide und visibilitychange.

Damit Daten beim Entfernen einer Seite an den Server gesendet werden, empfehlen wir sendBeacon() oder Fetch keep-alive. Derzeit können Unternehmensnutzer das Richtlinien-Flag AllowSyncXHRInPageDismissal und Entwickler das ursprüngliche Test-Flag allow-sync-xhr-in-page-dismissal verwenden, um synchrone XHR-Anfragen während des Seitenentladens zuzulassen. Diese Option wird vorübergehend deaktiviert und wird voraussichtlich in Chrome 88 entfernt.

Weitere Informationen hierzu und zu den Alternativen finden Sie unter Synchrone XMLHTTPRequest() während der Seitenablehnung nicht zulassen.

Zu entfernende Absicht | Status der Chrome-Plattform | Chromium-Fehler

FTP-Unterstützung eingestellt

Die aktuelle FTP-Implementierung in Chrome bietet keine Unterstützung für verschlüsselte Verbindungen (FTPS) oder 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. Darüber hinaus sind auf allen betroffenen Plattformen kompatiblere FTP-Clients verfügbar.

In Chrome 72 wird die Unterstützung für das Abrufen von Dokumentunterressourcen über FTP und das Rendern von FTP-Ressourcen auf oberster Ebene entfernt. Wenn Sie FTP-URLs aufrufen, wird je nach Ressourcentyp derzeit eine Verzeichnisliste oder ein Download angezeigt. Ein Fehler in Google Chrome 74 und höher führte dazu, dass der Zugriff auf FTP-URLs über HTTP-Proxys nicht mehr unterstützt wird. Die Proxy-Unterstützung für FTP wurde in Google Chrome 76 vollständig entfernt.

Die übrigen Funktionen der FTP-Implementierung von Google Chrome sind darauf beschränkt, entweder eine Verzeichnisliste anzuzeigen oder eine Ressource über unverschlüsselte Verbindungen herunterzuladen.

Der Zeitplan für die Einstellung wird vorläufig so festgelegt:

Chrome 80 (ab Februar 2020 stabil)

FTP ist standardmäßig für Nicht-Unternehmens-Clients deaktiviert. Es kann jedoch mit dem --enable-ftp- oder dem --enable-features=FtpProtocol-Befehlszeilen-Flag aktiviert werden. Alternativ kann es über die Option #enable-ftp auf chrome://flags aktiviert werden.

Chrome 81 (stabil ab März 2020)

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

Chrome 82 (ab April 2020 stabil)

Die FTP-Unterstützung wird vollständig entfernt.

Zu entfernende Absicht | Status der Chrome-Plattform | Chromium-Fehler

Pop-ups beim Entfernen der Seite nicht zulassen

Seiten dürfen während des Entfernens window.open() nicht mehr verwenden, um eine neue Seite zu öffnen. Der Pop-up-Blocker von Chrome hat dies bereits verhindert. Jetzt ist es aber nicht mehr zulässig, unabhängig davon, ob der Pop-up-Blocker aktiviert ist oder nicht.

Unternehmen können mit dem Richtlinien-Flag AllowPopupsDuringPageUnload Pop-ups während des Entladens zulassen. Chrome erwartet, dieses Flag in Chrome 82 zu entfernen.

Entfernungsabsicht | Chromestatus-Tracker | Chromium-Fehler

Nicht ursprungsbereinigte ImageBitmap-Serialisierung und Übertragung entfernt

Es werden jetzt Fehler ausgegeben, wenn ein Skript versucht, eine nicht ursprungsbereinigte ImageBitmap zu serialisieren oder zu übertragen. Eine nicht ursprungsbereinigte ImageBitmap enthält Daten aus ursprungsübergreifenden Bildern, die nicht von der CORS-Logik überprüft werden.

Zu entfernende Absicht | Status der Chrome-Plattform | Chromium-Fehler

Protokollverarbeitung erfordert jetzt einen sicheren Kontext

Die Methoden registerProtocolHandler() und unregisterProtocolHandler() erfordern jetzt einen sicheren Kontext. Diese Methoden können Clientstatus so neu konfigurieren, dass sie die Übertragung potenziell sensibler Daten über ein Netzwerk ermöglichen.

Mit der Methode registerProtocolHandler() erhält eine Webseite einen Mechanismus, mit dem sie sich selbst für die Verarbeitung eines Protokolls registrieren kann, nachdem der Nutzer eingewilligt hat. Eine webbasierte E-Mail-Anwendung könnte sich beispielsweise für die Verarbeitung des Schemas mailto: registrieren. Mit der entsprechenden unregisterProtocolHandler()-Methode kann eine Website die Registrierung für die Protokollverarbeitung abbrechen.

Zu entfernende Absicht | 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 enthalten ist. Eine Anleitung zum Upgraden finden Sie unter Webkomponenten-Update: mehr Zeit für ein Upgrade auf v1-APIs. Die folgenden Funktionen wurden entfernt. Diese Einstellung bezieht sich auf die unten aufgeführten Elemente.

Benutzerdefinierte Elemente

Zu entfernende Absicht | Status der Chrome-Plattform | Chromium-Fehler

HTML-Importe

Zu entfernende Absicht | Status der Chrome-Plattform | Chromium-Fehler

Schatten-DOM

Zu entfernende Absicht | Status der Chrome-Plattform | Chromium-Fehler

„-webkit-characterance:button“ für beliebige Elemente entfernen

Ändert -webkit-appearance:button so, dass sie nur mit den Schaltflächen <button> und <input> funktioniert. Wenn button für ein nicht unterstütztes Element angegeben ist, wird das Element in der Standarddarstellung angezeigt. Für alle anderen -webkit-appearance-Keywords gilt diese Einschränkung bereits.

Zu entfernende Absicht | Status der Chrome-Plattform | Chromium-Fehler

Einstellungsrichtlinie

Damit die Plattform intakt bleibt, entfernen wir manchmal APIs von der Webplattform, die bereits im Vorfeld ausgeführt wurden. Es gibt viele Gründe, warum wir eine API entfernen, z. B.:

  • Sie werden durch neuere APIs ersetzt.
  • Sie werden aktualisiert, um Änderungen der Spezifikationen widerzuspiegeln und so für eine einheitliche und einheitliche Darstellung mit anderen Browsern zu sorgen.
  • Es handelt sich dabei um frühe Experimente, die in anderen Browsern noch nie zum Laufen gekommen sind und daher den Support für Webentwickler erhöhen können.

Einige dieser Änderungen wirken sich auf eine sehr geringe Anzahl von Websites aus. Um Probleme frühzeitig zu minimieren, informieren wir Entwickler vorab, damit sie die erforderlichen Änderungen vornehmen können, damit ihre Websites weiterhin funktionieren.

Für Chrome gibt es derzeit einen Prozess zur Einstellung und Entfernung von APIs, der im Wesentlichen so aussieht:

  • Mitteilung in der Mailingliste blink-dev ankündigen
  • In der Chrome-Entwicklertools-Konsole kannst du Warnungen festlegen und eine Zeitskala festlegen, wenn Nutzung auf der Seite erkannt wird.
  • Warten Sie, überwachen Sie die Funktion und entfernen Sie sie dann, wenn die Nutzung sinkt.

Eine Liste aller eingestellten Funktionen finden Sie auf chromestatus.com mit dem eingestellten Filter . Entfernte Funktionen finden Sie unter Filter entfernt. Außerdem werden wir versuchen, in diesen Beiträgen einige der Änderungen, Überlegungen und Migrationspfade zusammenzufassen.