Articles

Besonderheiten der API
Geordnet nach den am wenigsten genutzten APIs:
Authentifizierungsanbieter-Dienste
Implementieren Sie \Drupal\Core\Authentication\AuthenticationProviderInterface und verwenden Sie den Servicetag 'authentication_provider'.


Ăśbersicht
Blöcke in Drupal 8 bestehen tatsächlich aus zwei separaten API-Strukturen, um eine Benutzeroberfläche zu schaffen, die derjenigen ähnelt, die Drupal in früheren Versionen unterstützte. Diese beiden APIs sind das Block Plugin API, eine eigenständige API für die Wiederverwendung, und das Block Entity API, eine Drupal-8-spezifische Nutzung zur Platzierung von Blöcken und Steuerung der Sichtbarkeit.


Die Cache-API wurde in Drupal 8 erheblich verbessert. In den folgenden Abschnitten werden die einzelnen Funktionen ausführlicher erläutert.
Zur kurzen EinfĂĽhrung siehe auch die Seite Cache API in der API-Dokumentation.
Cache-Metadaten
Alle Elemente, die entweder direkt gerendert werden oder zur Bestimmung dessen dienen, was angezeigt wird, stellen Cache-Metadaten bereit – von Zugriffsresultaten bis hin zu Entitäten und URLs.


Cache-Tags = Datenabhängigkeiten
Cache-Tags beschreiben Abhängigkeiten von Daten, die von Drupal verwaltet werden.
Warum?
Cache-Tags bieten eine deklarative Möglichkeit, nachzuverfolgen, welche Cache-Elemente von bestimmten, von Drupal verwalteten Daten abhängen.


Cache-Kontexte = (Request-)Kontextabhängigkeiten
Cache-Kontexte sind ähnlich wie der HTTP-Header Vary.
Warum?
Cache-Kontexte definieren, wie kontextabhängige Varianten von etwas, das gecacht werden soll, erstellt werden. Der Code zur Erstellung von Caches wird dadurch leichter lesbar, und dieselbe Logik muss nicht an jeder Stelle wiederholt werden, an der gleiche Kontextänderungen benötigt werden.
Beispiele:


Cache max-age = Zeitabhängigkeiten
Cache max-age entspricht der HTTP-Direktive max-age im Cache-Control-Header.
Warum?
Die maximale Cache-Dauer bietet eine deklarative Möglichkeit, zeitabhängige Caches zu erstellen.


Varnish Cache ist ein Webanwendungs-Beschleuniger, auch bekannt als HTTP-Cache-Proxy-Server. Varnish wird auf Tausenden Drupal-Websites eingesetzt, um die Seitenladeleistung um das 10- bis 1000-fache zu steigern, und kann mit Cache-Tags verwendet werden, um das Leeren des Caches zu vereinfachen.
FĂĽr die grundlegende Integration von Cache-Tags mĂĽssen Sie drei Dinge tun, um sicherzustellen, dass Varnish gut mit den von Drupal generierten Cache-Tags zusammenarbeitet:


Um die Arbeit mit Cache-Metadaten (Cache-Tags, Cache-Kontexte und Max-Age) zu erleichtern, gibt es in Drupal 8 das Interface CacheableDependencyInterface
.


Dieses Interface arbeitet an der Schnittstelle zwischen Cache API und Response. Da es sich vor allem um eine Antwort handelt, befindet sich hier die wichtigste Information.
Siehe auch
