Bei Nutzung der API Platform geben einige Vorgänge lokalisierte Texte an API-Client zurück. Um diese in der angeforderten Sprache anzuzeigen, nehmen wir kleine Änderungen vor.

Wir orientieren uns hier an der Accept-Language-HTTP Kopfzeile nach RFC 9110.

Symfony hat seit der Version 5.4 hierfür einige Konfigurationsanweisungen hinzugefügt.

Damit nun z.B. auch Validierungsfehler in der korrekten Übersetzung an den API-Client ausgeliefert werden können, passen wir die framework-Konfiguration an:

# Datei: config/packages/framework.yaml
framework:
    set_locale_from_accept_language: true
    set_content_language_from_locale: true
    enabled_locales: ['de', 'en']

In diesem Beispiel aktivieren die aktive Content-Negotiation für die Gebietsschema de für Deutsch und en für Englisch.

Nach dieser Änderung werden vorhandene Übersetzungen genutzt.