Wie man ein Backend für das Play Framework erstellt?
In diesem Tutorial lernen Sie, wie Sie ein vollständiges Backend für das Play Framework mit Back4App erstellen.
Wir werden die wesentlichen Funktionen für Server-Backends durchgehen, einschließlich Konfigurationseinstellungen, Datenbankverwaltung, Cloud-Code-Funktionen, REST- und GraphQL-APIs, Benutzerauthentifizierung, Dateispeicherung und Echtzeitanfragen.
Sie werden sehen, wie Back4App den Prozess der Einrichtung, Skalierung und Wartung eines Webanwendungs-Backends vereinfacht, während Sie sich auf Ihren Play Framework-Code konzentrieren können.
Indem Sie lernen, wie man ein Backend für das Play Framework mit Back4App erstellt, reduzieren Sie die Entwicklungszeit und minimieren die Probleme im DevOps.
Sie werden auch robuste Funktionen wie soziale Anmeldungen, Aufgabenplanung (Cloud-Jobs) und Webhooks hinzufügen. Sobald Sie dies abgeschlossen haben, können Sie das System in eine produktionsreife Lösung erweitern und bei Bedarf fortschrittlichere Funktionen integrieren.
Wenn Sie fertig sind, haben Sie einen soliden Plan, um Ihre nächste skalierbare und sichere Play Framework-Webanwendung zu erstellen.
Sie werden bereit sein, tiefer in Leistungsverbesserungen, Integrationen oder Optimierungen im Entwicklungsmodus einzutauchen, um den Anforderungen der realen Welt gerecht zu werden.
Um dieses Tutorial abzuschließen, benötigen Sie:
- Ein Back4App-Konto und ein neues Back4App-Projekt Erste Schritte mit Back4App. Wenn Sie kein Konto haben, können Sie eines kostenlos erstellen. Folgen Sie der obigen Anleitung, um Ihr Projekt vorzubereiten.
- Eine funktionierende Play Framework-Umgebung
- Grundkenntnisse des Play Frameworks Verweisen Sie auf die Play-Dokumentation wenn Sie Ihre Grundlagen auffrischen müssen.
- Vertrautheit mit REST oder GraphQL Dies wird Ihnen helfen, mit Back4App zu interagieren, insbesondere wenn Sie sich entscheiden, das Parse SDK nicht direkt zu verwenden oder wenn Sie es nicht verwenden können.
Stellen Sie sicher, dass Sie diese Voraussetzungen erfüllt haben, bevor Sie beginnen. Ihr Back4App-Projekt eingerichtet und Ihre Play Framework-Umgebung bereit zu haben, wird Ihnen helfen, reibungslos mitzukommen.
Ein frisches Back4App-Projekt ist das Rückgrat für Ihr Backend, da es die Daten, die Authentifizierung und die Cloud-Logik Ihrer Anwendung verwaltet. Egal, ob Sie einen kleinen Prototyp oder eine groß angelegte Webanwendung erstellen, es ist einfach, Ihre Play Framework-App mit einem neuen Back4App-Projekt zu verbinden.
- Melden Sie sich bei Ihrem Back4App-Konto an.
- Klicken Sie auf „Neue App“ in Ihrem Back4App-Dashboard.
- Benennen Sie Ihre App, zum Beispiel „Play-Framework-Backend“.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/drXO0UqsgxhFvRDiVmsMb_image.png?format=webp)
Sobald Ihr neues Projekt erstellt ist, wird es im Dashboard angezeigt.
Back4App nutzt Parse Server. Wenn Ihre Play Framework-App plant, über das Parse Java SDK mit Back4App zu interagieren, können Sie es bei Bedarf zu Ihrer build.sbt hinzufügen. Andernfalls können Sie REST- oder GraphQL-Endpunkte verwenden.
Holen Sie sich Ihre Parse-Schlüssel:
- Öffnen Sie in Ihrem Back4App-Dashboard App-Einstellungen oder Sicherheit & Schlüssel um Ihre Anwendungs-ID, REST-API-Schlüssel, JavaScript-Schlüssel (wenn Sie Frontend-Aufrufe verwenden), oder Client-Schlüssel, plus die Server-URL (normalerweise https://parseapi.back4app.com).
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/F9teHXd_M8ERn1OPGirbi_image.png?format=webp)
Verwendung des Java/Parse SDK (Optional):
Wenn Sie eine direkte serverseitige Integration mit dem Parse SDK wünschen, fügen Sie eine Abhängigkeit in Ihrer build.sbt:
Dann können Sie in Ihrem Play Framework-Code Parse initialisieren:
Sie können dies in Ihrer Global.scala platzieren oder es von einem geeigneten Initialisierungspunkt aus aufrufen. Dies bereitet Sie auf die direkte Interaktion mit Ihrem Back4App-Projekt vor. Wenn Sie möchten, verwenden Sie die REST- oder GraphQL-Endpunkte für Datenoperationen, insbesondere wenn Sie mehr Kontrolle über Ihre HTTP-Anfragen haben möchten oder wenn Sie Mikrodienste erstellen.
Der Datenspeicherdienst von Back4App unterstützt eine breite Palette von Datentypen und die dynamische Erstellung von Schemata. Dies ermöglicht es Ihnen, die Daten Ihrer Play-App mit minimalem Aufwand zu speichern.
- Öffnen Sie den Abschnitt „Datenbank“ in Ihrem Back4App-Dashboard.
- Erstellen Sie eine neue Klasse (z. B. „Todo“) und fügen Sie Spalten hinzu (z. B. title als String, isCompleted als Boolean).
- Speichern Sie, um Ihr Datenbankschema abzuschließen.
![Neue Klasse erstellen Neue Klasse erstellen](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/iaZ_P-7epc_LSMFIPlaZV_image.png?format=webp)
Wenn Sie Ihre Datenstruktur schnell definieren möchten:
- Öffnen Sie den KI-Agenten in Ihrem App-Dashboard.
- Beschreiben Sie Ihr gewünschtes Datenmodell in einfacher Sprache (z. B. „Erstellen Sie ein einfaches ToDo-Modell.“).
- Der Agent generiert das Schema automatisch für Sie.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/0snNZwHWzxuXlNu30n7IA_image.png?format=webp)
Wenn Sie sich entschieden haben, das Parse Java SDK in Ihrer Play Framework-App zu verwenden, können Sie Daten speichern und abfragen:
Sie können HTTP-Anfragen von Ihren Play Framework-Controllern oder -Diensten senden:
Back4App bietet auch eine GraphQL-API an:
Das ist praktisch, wenn Sie Mikrodienste erstellen oder eine flexible API für Ihre Front-End-Clients wünschen.
Wenn Ihre Webanwendung Echtzeitdaten benötigt, aktivieren Sie Live-Abfragen:
- Aktivieren Sie Live-Abfragen im Back4App-Dashboard unter Servereinstellungen.
- Richten Sie Ihr Abonnement im Code ein. Wenn Sie das Parse SDK oder benutzerdefinierten Code verwenden, stellen Sie sicher, dass Sie die liveQueryServerURL konfigurieren.
- Abonnieren Sie Änderungen für Klassen wie „Todo.“
Back4App bietet Zugriffskontrolllisten (ACLs) für die Sicherheit auf Objektebene und Klassenebene Berechtigungen (CLPs) für umfassende Einschränkungen. Dies hilft, Ihre Server-Backends sicher zu halten und sicherzustellen, dass nur autorisierte Operationen durchgeführt werden.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/PdAyrw1nqA1QQJFuCc-4t_image.png?format=webp)
Im Datenbank Abschnitt Ihres Back4App-Dashboards:
- Wählen Sie eine Klasse (z. B. „Todo“).
- Öffnen Sie CLPs um das Lesen/Schreiben auf authentifizierte Benutzer, Rollen oder die Öffentlichkeit zu beschränken.
- Konfigurieren Sie nach Bedarf (z. B. „Erfordert Authentifizierung“ für alle Schreibvorgänge).
ACLs schützen einzelne Objekte. Zum Beispiel können Sie sicherstellen, dass nur ein bestimmter Benutzer einen bestimmten Datensatz lesen oder schreiben kann. Wenn Sie das Parse SDK aus Scala-Code verwenden:
Cloud-Code ermöglicht es Ihnen, benutzerdefinierte Logik auf den Servern von Back4App auszuführen und Geschäftsregeln oder Validierungen vor oder nach Datenoperationen hinzuzufügen. Sie müssen sich nicht um die Bereitstellung Ihres eigenen Servers oder um Neustarts im Entwicklungsmodus kümmern, um solche Funktionen zu implementieren.
Sie können dies von Ihrer Play-App über REST, GraphQL oder, wenn Sie das Parse SDK verwenden, direkt aufrufen.
Verwenden Sie die Back4App CLI oder das Dashboard:
- Installieren Sie die CLI (Beispiel für Linux/MacOS):
- Konfigurieren Sie den Kontoschlüssel:
- Bereitstellen:
Oder bereitstellen über das Dashboard indem Sie Ihre Funktion in Cloud Code > Funktionen einfügen und auf „Bereitstellen“ klicken.
Cloud-Code unterstützt NPM-Module. Zum Beispiel, wenn Sie einen HTTP-Client wie axios:
Back4App verwendet die Parse.User-Klasse für die Registrierung, Anmeldung und Sitzungsverwaltung. Stellen Sie in Ihrer Konfigurationseinstellung, sicher, dass „E-Mail-Verifizierung aktivieren“ und „Passwort zurücksetzen aktivieren“ aktiviert sind, wenn gewünscht.
Wenn Sie soziale Anmeldungen (Google, Apple oder Facebook) benötigen, konfigurieren Sie diese in Ihrem Back4App-Dashboard. Parse bietet Hilfsmethoden oder Sie können sich auf Standard-OAuth-Workflows verlassen, je nach Ihren Bedürfnissen und Ansätzen.
Back4App speichert Dateien über Parse.File. Vom Play Framework aus können Sie mit REST oder Parse SDK hochladen.
Sicherheitsüberlegungen: Sie können die Berechtigungen für den Datei-Upload (aktivieren für öffentlich, anonym oder authentifiziert) in den Back4App-Servereinstellungen konfigurieren.
- Navigieren Sie zu den E-Mail-Einstellungen im Back4App-Dashboard.
- E-Mail-Verifizierung aktivieren und die E-Mail-Vorlagen für Passwortzurücksetzungen einrichten.
- In Ihrer Play-App können Sie aufrufen:
Dies wird Back4App dazu bringen, Anweisungen zum Zurücksetzen des Passworts an die E-Mail des Benutzers zu senden.
Wenn Sie eine Startaufgabe für Hintergrundarbeiten (z. B. Datenbereinigung oder Berichtserstellung) benötigen, können Sie Cloud-Jobs auf Back4App planen.
Planung:
- Bereitstellen Ihres Cloud-Codes.
- In App-Einstellungen > Servereinstellungen > Hintergrundjobs, planen Sie den Job, um täglich, wöchentlich oder nach Bedarf ausgeführt zu werden.
![Planung eines Cloud-Jobs Planung eines Cloud-Jobs](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/5wG60YnWIST74erryTb-u_image.png?format=webp)
Wenn Sie externe Dienste benachrichtigen möchten, wann immer sich Daten ändern, richten Sie Webhooks in Back4App ein.
- Gehen Sie zu Mehr > WebHooks in Ihrem Back4App-Dashboard.
- Webhook hinzufügen mit einem Endpunkt (z. B. Slack oder Stripe).
- Wählen Sie Trigger aus, wie „Neuer Datensatz in der Todo-Klasse.“
![Hinzufügen eines Webhooks Hinzufügen eines Webhooks](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/morUMdwsAbVQ1EmBfUfAA_image.png?format=webp)
Sie können auch Webhooks in Cloud-Code-Triggern erstellen, indem Sie direkte HTTP-Anfragen an Drittanbieterdienste senden.
![BeforeSave WebHook BeforeSave WebHook](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/fXvy4eRzabyWmN80OMyqW_image.png?format=webp)
Die Back4App Admin App ist eine benutzerfreundliche Oberfläche für Daten- und Datensatzverwaltung. Nicht-technische Benutzer können CRUD-Operationen durchführen, ohne in den Code eintauchen zu müssen.
- Gehe zu App Dashboard > Mehr > Admin App.
- Aktiviere es und erstelle einen Admin-Benutzer.
- Wähle eine Subdomain für einen bequemen Zugriff.
![Admin App aktivieren Admin App aktivieren](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/5BTk1ntDh9JLXurObmm_o_image.png?format=webp)
Sobald du eingeloggt bist, kannst du Dateneinträge verwalten, ohne mit den niedrigeren Dashboards oder CLI-Tools herumzuspielen.
![Document image Document image](https://images.archbee.com/yD3zCY-NNBBIfd0uqcfR5/jOFU8C0qiFm6wiVZXS9l0_image.png?format=webp)
Herzlichen Glückwunsch! Sie haben gelernt, wie man ein Backend für das Play Framework mit den Diensten von Back4App erstellt. In diesem Tutorial haben Sie:
- Ein sicheres Backend für eine Play Framework-App auf Back4App erstellt.
- Eine Datenbank, einschließlich Schema-Design, Beziehungen und Echtzeitanfragen, eingerichtet.
- ACLs und CLPs für sicheren Datenzugriff angewendet.
- Cloud Code für benutzerdefinierte Logik, Trigger und externe Integrationen geschrieben.
- Benutzerauthentifizierung, soziale Anmeldung und Passwortzurücksetzungen konfiguriert.
- Datei-Uploads verarbeitet und optionale Dateisicherheit hinzugefügt.
- Hintergrundaufgaben mit Cloud Jobs geplant.
- Mit Drittanbieterdiensten über Webhooks integriert.
- Das Back4App Admin Panel für eine optimierte Datenverwaltung erkundet.
Mit diesen Werkzeugen können Sie den Entwicklungsmodus optimieren, nach Bedarf skalieren und robuste Webanwendungen auf dem Play Framework erstellen.
Nutzen Sie weitere Integrationen, Leistungsoptimierungen und fortschrittliche Sicherheitsmaßnahmen, um Ihre Server-Backends auf die nächste Stufe zu heben.
- Verbessern Sie Ihre Produktionsumgebung mit Caching-, Logging- oder Überwachungstools.
- Erforschen Sie fortgeschrittene Sicherheit mit rollenbasierten Zugriffskontrollen oder Zero-Trust-Setups.
- Integrieren Sie Zahlungs-Gateways oder andere Drittanbieter-APIs für Commerce oder Analytik.
- Schauen Sie sich die offizielle Dokumentation von Back4App für tiefere Einblicke in Leistung und Fehlersuche an.
- Überprüfen Sie weitere Tutorials zu Echtzeit-Chat-Apps, IoT-Lösungen oder standortbasierten Diensten – viele davon basieren auf den Techniken in diesem Leitfaden.
![Doc contributor](https://s3.amazonaws.com/archbee-animals/cat.png)