Quickstarters
Feature Overview
Wie man ein Backend für ReactJS aufbaut?
51 min
einführung in diesem tutorial lernen sie, wie sie ein vollständiges backend für eine reactjs anwendung mit back4app erstellen wir werden die integration wesentlicher back4app funktionen durchgehen wie z b datenbankverwaltung, cloud code funktionen, rest und graphql apis, benutzerauthentifizierung und echtzeitanfragen (live queries) um ein sicheres, skalierbares und robustes backend zu erstellen, das nahtlos mit ihrem reactjs frontend kommuniziert sie werden auch sehen, wie die schnelle einrichtung und die intuitive umgebung von back4app die zeit und den aufwand im vergleich zur manuellen konfiguration von servern und datenbanken drastisch reduzieren können auf dem weg dorthin werden sie praktische erfahrungen mit wichtigen funktionen sammeln, einschließlich fortschrittlicher sicherheitsmerkmale, der planung von aufgaben mit cloud jobs und der einrichtung von webhooks für externe integrationen am ende dieses tutorials sind sie gut vorbereitet, um dieses grundlegende setup in eine produktionsbereite anwendung zu erweitern oder bei bedarf benutzerdefinierte logik und drittanbieter apis einfach zu integrieren voraussetzungen um dieses tutorial abzuschließen, benötigen sie ein back4app konto und ein neues back4app projekt erste schritte mit back4app https //www back4app com/docs/get started/new parse app wenn sie kein konto haben, können sie eines kostenlos erstellen befolgen sie die obige anleitung, um ihr projekt vorzubereiten grundlegende reactjs entwicklungsumgebung sie können dies mit create react app https //create react app dev/docs/getting started/ oder einem ähnlichen tool einrichten stellen sie sicher, dass node js auf ihrem computer installiert ist node js (version 14 oder höher) installiert sie benötigen node js, um npm pakete zu installieren und lokale entwicklungsserver auszuführen node js installieren https //nodejs org/en/download/ vertrautheit mit javascript und grundlegenden reactjs konzepten offizielle dokumentation von reactjs https //reactjs org/docs/getting started html wenn sie neu bei react sind, lesen sie die offiziellen dokumente oder ein tutorial für anfänger, bevor sie beginnen stellen sie sicher, dass sie alle diese voraussetzungen erfüllt haben, bevor sie beginnen ihr back4app projekt eingerichtet und ihre lokale reactjs umgebung bereit zu haben, wird ihnen helfen, leichter folgen zu können schritt 1 – einrichten des back4app projekts ein neues projekt erstellen der erste schritt beim erstellen ihres reactjs backends auf back4app besteht darin, ein neues projekt zu erstellen wenn sie noch keines erstellt haben, befolgen sie diese schritte melden sie sich bei ihrem back4app konto an klicken sie auf die schaltfläche „neue app“ in ihrem back4app dashboard geben sie ihrer app einen namen (z b „reactjs backend tutorial“) sobald das projekt erstellt ist, sehen sie es in ihrem back4app dashboard aufgeführt dieses projekt wird die grundlage für alle backend konfigurationen sein, die in diesem tutorial besprochen werden verbinden sie das parse sdk back4app basiert auf der parse plattform, um ihre daten zu verwalten, echtzeitfunktionen bereitzustellen, die benutzerauthentifizierung zu handhaben und mehr die verbindung ihrer reactjs anwendung mit back4app umfasst die installation des parse npm pakets und die initialisierung mit den anmeldeinformationen aus ihrem back4app dashboard rufen sie ihre parse schlüssel ab navigieren sie in ihrem back4app dashboard zum abschnitt „app einstellungen“ oder „sicherheit & schlüssel“, um ihre anwendungs id und javascript schlüssel sie finden auch die parse server url (häufig im format https //parseapi back4app com ) installieren sie das parse sdk in ihrem reactjs projekt npm install parse wenn sie yarn verwenden, können sie es mit folgendem befehl installieren yarn add parse initialisieren sie parse in ihrer reactjs anwendung typischerweise würden sie eine datei (z b parseconfig js ) in ihrem src verzeichnis erstellen src/parseconfig js // src/parseconfig js import parse from 'parse'; // replace the placeholders with your back4app credentials parse initialize('your application id', 'your javascript key'); parse serverurl = 'https //parseapi back4app com'; export default parse; diese datei stellt sicher, dass jedes mal, wenn sie parse an anderer stelle in ihrer react app importieren, es vorkonfiguriert ist, um sich mit ihrer spezifischen back4app instanz zu verbinden durch das abschließen dieses schrittes haben sie eine sichere verbindung zwischen ihrem reactjs frontend und dem back4app backend hergestellt alle anfragen und datenübertragungen werden sicher über dieses sdk geleitet, wodurch die komplexität manueller rest oder graphql aufrufe verringert wird (obwohl sie diese bei bedarf weiterhin verwenden können) schritt 2 – datenbank einrichten daten speichern und abfragen mit ihrem back4app projekt, das eingerichtet und das parse sdk in ihre react app integriert ist, können sie jetzt mit dem speichern und abrufen von daten beginnen der einfachste weg, einen datensatz zu erstellen, besteht darin, die parse object klasse zu verwenden // example create a todo item import parse from ' /parseconfig'; async function createtodoitem(title, iscompleted) { const todo = parse object extend('todo'); const todo = new todo(); todo set('title', title); todo set('iscompleted', iscompleted); try { const savedtodo = await todo save(); console log('todo saved successfully ', savedtodo); return savedtodo; } catch (error) { console error('error saving todo ', error); } } // example query all todo items async function fetchtodos() { const todo = parse object extend('todo'); const query = new parse query(todo); try { const results = await query find(); console log('fetched todo items ', results); return results; } catch (error) { console error('error fetching todos ', error); } } alternativ können sie die rest api endpunkte von back4app verwenden curl x post \\ h "x parse application id your application id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"title" "buy groceries", "iscompleted" false}' \\ https //parseapi back4app com/classes/todo back4app bietet auch eine graphql schnittstelle mutation { createtodo(input { fields { title "clean the house" iscompleted false } }) { todo { objectid title iscompleted } } } diese vielfältigen optionen ermöglichen es ihnen, datenoperationen auf die weise zu integrieren, die am besten zu ihrem entwicklungsprozess passt sei es über das parse sdk, rest oder graphql schema design und datentypen standardmäßig erlaubt parse schemaerstellung on the fly , aber sie können auch ihre klassen und datentypen im back4app dashboard definieren, um mehr kontrolle zu haben navigieren sie zum abschnitt „datenbank“ in ihrem back4app dashboard erstellen sie eine neue klasse (z b „todo“) und fügen sie relevante spalten hinzu, wie titel (string) und iscompleted (boolean) back4app unterstützt auch verschiedene datentypen string , zahl , boolean , objekt , datum , datei , pointer, array, relation , geopoint , und polygon sie können den geeigneten typ für jedes feld auswählen wenn sie möchten, können sie auch parse automatisch diese spalten erstellen lassen, wenn sie zum ersten mal ein objekt aus ihrer react app speichern back4app bietet einen ki agenten, der ihnen helfen kann, ihr datenmodell zu entwerfen öffnen sie den ki agenten von ihrem app dashboard oder im menü beschreiben sie ihr datenmodell in einfacher sprache (z b „bitte erstellen sie eine neue todo app bei back4app mit einem vollständigen klassenschema “) lassen sie den ki agenten das schema für sie erstellen die verwendung des ki agenten kann ihnen zeit bei der einrichtung ihrer datenarchitektur sparen und die konsistenz in ihrer anwendung gewährleisten relationale daten wenn sie relationale daten haben sagen wir, ein kategorie objekt, das auf mehrere todo elemente verweist können sie zeiger oder beziehungen in parse verwenden zum beispiel, indem sie einen zeiger auf eine kategorie // linking a task to a category with a pointer async function createtaskforcategory(categoryobjectid, title) { const todo = new parse object('todo'); // construct a pointer to the category const categorypointer = new parse object('category'); categorypointer id = categoryobjectid; // set fields todo set('title', title); todo set('category', categorypointer); try { return await todo save(); } catch (err) { console error('error creating task with category relationship ', err); } } wenn sie abfragen, können sie auch zeiger daten einbeziehen const query = new parse query('todo'); query include('category'); const todoswithcategory = await query find(); dieser include('category') aufruf ruft die kategoriedetails zusammen mit jedem todo ab, wodurch ihre relationalen daten nahtlos zugänglich werden echtzeitabfragen für echtzeit updates bietet back4app echtzeitabfragen in ihrer reactjs app können sie änderungen in einer bestimmten klasse abonnieren aktivieren sie echtzeitabfragen in ihrem back4app dashboard unter den servereinstellungen stellen sie sicher, dass „echtzeitabfragen“ aktiviert ist initialisieren sie ein echtzeitabonnement in ihrem code src/parseconfig js // src/parseconfig js import parse from 'parse'; // replace the placeholders with your back4app credentials parse initialize('your application id', 'your javascript key'); parse serverurl = 'https //parseapi back4app com'; // live query's subdomain parse livequeryserverurl = 'wss\ //your subdomain here b4a io'; export default parse; import parse from ' /parseconfig'; async function subscribetotodos(callback) { const query = new parse query('todo'); const subscription = await query subscribe(); subscription on('create', (newtodo) => { console log('new todo created ', newtodo); callback('create', newtodo); }); subscription on('update', (updatedtodo) => { console log('todo updated ', updatedtodo); callback('update', updatedtodo); }); subscription on('delete', (deletedtodo) => { console log('todo deleted ', deletedtodo); callback('delete', deletedtodo); }); return subscription; } durch das abonnieren erhalten sie echtzeitbenachrichtigungen, wann immer ein neues todo erstellt, aktualisiert oder gelöscht wird diese funktion ist besonders wertvoll für kollaborative oder dynamische apps, in denen mehrere benutzer die neuesten daten sehen müssen, ohne die seite zu aktualisieren schritt 3 – anwendung von sicherheit mit acls und clps back4app sicherheitsmechanismus back4app nimmt sicherheit ernst, indem es zugriffskontrolllisten (acls) und klassenebene berechtigungen (clps) diese funktionen ermöglichen es ihnen, einzuschränken, wer daten auf objekt oder klassenbasis lesen oder schreiben kann, und stellen sicher, dass nur autorisierte benutzer ihre daten ändern können zugriffskontrolllisten (acls) eine acl wird auf einzelne objekte angewendet, um zu bestimmen, welche benutzer, rollen oder die öffentlichkeit lese /schreiboperationen durchführen können zum beispiel async function createprivatetodo(title, owneruser) { const todo = parse object extend('todo'); const todo = new todo(); todo set('title', title); // create an acl granting read/write access only to the owner const acl = new parse acl(owneruser); acl setpublicreadaccess(false); acl setpublicwriteaccess(false); todo setacl(acl); try { return await todo save(); } catch (err) { console error('error saving private todo ', err); } } wenn sie das objekt speichern, hat es eine acl, die verhindert, dass jemand außer dem angegebenen benutzer es liest oder ändert klassenebene berechtigungen (clps) clps regeln die standardberechtigungen einer gesamten klasse, wie z b ob die klasse öffentlich lesbar oder schreibbar ist, oder ob nur bestimmte rollen darauf zugreifen können gehe zu deinem back4app dashboard , wähle deine app aus und öffne den datenbank bereich wähle eine klasse aus (z b „todo“) öffne die klassenebene berechtigungen registerkarte konfiguriere deine standardwerte, wie „erfordert authentifizierung“ für lesen oder schreiben, oder „kein zugriff“ für die öffentlichkeit diese berechtigungen setzen die grundlage, während acls die berechtigungen für einzelne objekte verfeinern ein robustes sicherheitsmodell kombiniert typischerweise sowohl clps (breite einschränkungen) als auch acls (fein abgestimmte einschränkungen pro objekt) für weitere informationen gehen sie zu app sicherheitsrichtlinien schritt 4 – schreiben und bereitstellen von cloud funktionen cloud code ist eine funktion der parse server umgebung, die es ihnen ermöglicht, benutzerdefinierten javascript code auf der serverseite auszuführen ohne dass sie ihre server oder infrastruktur verwalten müssen durch das schreiben von cloud code können sie ihr back4app backend mit zusätzlicher geschäftslogik, validierungen, triggern und integrationen erweitern, die sicher und effizient auf dem parse server ausgeführt werden wie es funktioniert wenn sie cloud code schreiben, platzieren sie typischerweise ihre javascript funktionen, trigger und alle erforderlichen npm module in einer main js (oder app js ) datei diese datei wird dann in ihr back4app projekt bereitgestellt, das innerhalb der parse server umgebung ausgeführt wird da diese funktionen und trigger auf dem server ausgeführt werden, können sie darauf vertrauen, dass sie vertrauliche logik verarbeiten, sensible daten verarbeiten oder nur backend api aufrufe tätigen prozesse, die sie möglicherweise nicht direkt dem client aussetzen möchten alle cloud codes für ihre back4app app laufen innerhalb des von back4app verwalteten parse servers, sodass sie sich keine gedanken über serverwartung, skalierung oder bereitstellung machen müssen jedes mal, wenn sie ihre main js datei aktualisieren und bereitstellen, wird der laufende parse server mit ihrem neuesten code aktualisiert main js dateistruktur eine typische main js könnte enthalten require anweisungen für alle benötigten module (npm pakete, integrierte node module oder andere cloud code dateien) definitionen von cloud funktionen mit parse cloud define() trigger wie parse cloud beforesave() , parse cloud aftersave() , usw npm module die sie installiert haben (falls erforderlich) zum beispiel könnten sie ein paket wie axios installieren, um http anfragen zu stellen sie können es dann oben in ihrer datei require (oder importieren) // main js // 1 import necessary modules and other cloud code files const axios = require('axios'); const report = require(' /reports'); // 2 define a custom cloud function parse cloud define('fetchexternaldata', async (request) => { const url = request params url; if (!url) { throw new error('url parameter is required'); } const response = await axios get(url); return response data; }); // 3 example of a beforesave trigger parse cloud beforesave('todo', (request) => { const todo = request object; if (!todo get('title')) { throw new error('todo must have a title'); } }); mit der möglichkeit, npm module zu installieren und zu verwenden, wird cloud code unglaublich flexibel, da sie mit externen apis integrieren, datenumwandlungen durchführen oder komplexe serverseitige logik ausführen können typische anwendungsfälle geschäftslogik zum beispiel können sie die punktzahl eines benutzers in einem spiel berechnen, indem sie mehrere objektattribute aggregieren, und diese daten dann automatisch speichern datenvalidierungen stellen sie sicher, dass bestimmte felder vorhanden sind oder dass ein benutzer über die richtigen berechtigungen verfügt, bevor sie einen datensatz speichern oder löschen trigger führen sie aktionen aus, wenn sich daten ändern (z b senden sie eine benachrichtigung, wenn ein benutzer sein profil aktualisiert) integrationen verbinden sie sich mit drittanbieter apis oder diensten zum beispiel könnten sie direkt von cloud code aus mit zahlungs gateways, slack benachrichtigungen oder e mail marketing plattformen integrieren sicherheitsdurchsetzung fügen sie eine zusätzliche sicherheitsebene hinzu, indem sie eingabeparameter in ihren cloud code funktionen validieren und bereinigen zum beispiel können sie sicherstellen, dass eingehende daten bestimmten formaten entsprechen, ungültige oder bösartige eingaben ablehnen und zugriffsregeln basierend auf benutzerrollen oder berechtigungen durchsetzen, bevor sie sensible operationen durchführen bereitstellen ihrer funktion im folgenden finden sie eine einfache cloud code funktion, die die länge eines vom client gesendeten textstrings berechnet main js // main js parse cloud define('calculatetextlength', async (request) => { const { text } = request params; if (!text) { throw new error('no text provided'); } return { length text length }; }); bereitstellung über die back4app cli 1 installieren sie die cli für linux/macos curl https //raw\ githubusercontent com/back4app/parse cli/back4app/installer sh | sudo /bin/bash für windows laden sie die b4a exe datei von der release seite https //github com/back4app/parse cli/releases 2 konfigurieren sie ihren kontoschlüssel b4a configure accountkey 3 bereitstellen ihres cloud codes b4a deploy bereitstellung über das dashboard gehen sie im dashboard ihrer app zu cloud code > funktionen kopieren/einfügen sie die funktion in den main js editor klicken sie auf bereitstellen rufen sie ihre funktion auf von reactjs mit dem parse sdk import parse from ' /parseconfig'; async function gettextlength(text) { try { const result = await parse cloud run('calculatetextlength', { text }); console log('text length ', result length); } catch (err) { console error('error calling cloud function ', err); } } sie können es auch über rest aufrufen curl x post \\ h "x parse application id your app id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"text" "hello back4app"}' \\ https //parseapi back4app com/functions/calculatetextlength oder über graphql mutation { calculatetextlength(input { text "hello graphql" }) { result } } diese flexibilität ermöglicht es ihnen, ihre benutzerdefinierte logik in ihr reactjs frontend oder jeden anderen client zu integrieren, der rest oder graphql unterstützt schritt 5 – konfiguration der benutzerauthentifizierung benutzerauthentifizierung in back4app back4app nutzt die parse user klasse als grundlage für die authentifizierung standardmäßig kümmert sich parse um die passwort hashing, sitzungstoken und sichere speicherung das bedeutet, dass sie keine komplexen sicherheitsabläufe manuell einrichten müssen einrichten der benutzerauthentifizierung in einer react anwendung können sie einen neuen benutzer mit folgendem befehl erstellen import parse from ' /parseconfig'; async function signupuser(username, password, email) { const user = new parse user(); user set('username', username); user set('password', password); user set('email', email); try { await user signup(); console log('user signed up successfully!'); } catch (error) { console error('error signing up user ', error); } } melden sie einen bestehenden benutzer an async function loginuser(username, password) { try { const user = await parse user login(username, password); console log('user logged in ', user); } catch (error) { console error('error logging in user ', error); } } über rest könnte ein login so aussehen curl x get \\ h "x parse application id your app id" \\ h "x parse rest api key your rest api key" \\ g \\ \ data urlencode 'username=alice' \\ \ data urlencode 'password=secret123' \\ https //parseapi back4app com/login sitzungsverwaltung nach einem erfolgreichen login erstellt parse ein sitzungstoken , das im benutzerobjekt gespeichert wird in ihrer react app können sie auf den aktuell angemeldeten benutzer zugreifen const currentuser = parse user current(); if (currentuser) { console log('currently logged in user ', currentuser getusername()); } else { console log('no user is logged in'); } parse verwaltet automatisch tokenbasierte sitzungen im hintergrund, aber sie können sie auch manuell verwalten oder widerrufen dies ist nützlich, wenn sie sich abmelden müssen await parse user logout(); integration von sozialem login back4app und parse können mit beliebten oauth anbietern wie google oder facebook , integriert werden, indem zusätzliche pakete installiert oder vorhandene adapter verwendet werden zum beispiel können sie einen facebook login einrichten, indem sie ihre facebook app id konfigurieren und parse facebookutils login() verwenden detaillierte anweisungen variieren, daher beziehen sie sich auf die dokumentation zum sozialen login https //www back4app com/docs/platform/sign in with apple const facebooklogin = async () => { try { const user = await parse facebookutils login('email'); console log(user existed() ? 'user logged in' 'user signed up and logged in'); } catch (error) { console error('error logging in with facebook ', error); } }; e mail verifizierung und passwortzurücksetzung um die e mail verifizierung und passwortzurücksetzung zu aktivieren navigieren sie zu den e mail einstellungen in ihrem back4app dashboard aktivieren sie die e mail verifizierung um sicherzustellen, dass neue benutzer den besitz ihrer e mail adressen verifizieren konfigurieren sie die absenderadresse , e mail vorlagen und ihre benutzerdefinierte domain, falls gewünscht diese funktionen verbessern die kontosicherheit und benutzererfahrung, indem sie den benutzerbesitz von e mails validieren und eine sichere methode zur passwortwiederherstellung bereitstellen schritt 6 – umgang mit dateispeicherung hochladen und abrufen von dateien parse enthält die parse file klasse zum verarbeiten von datei uploads, die back4app sicher speichert import parse from ' /parseconfig'; async function uploadimage(file) { // file is typically from an \<input type="file" /> in react const name = file name; const parsefile = new parse file(name, file); try { const savedfile = await parsefile save(); console log('file saved ', savedfile url()); return savedfile url(); } catch (err) { console error('error uploading file ', err); } } um die datei einem objekt in der datenbank anzuhängen, können sie folgendes tun async function createphotoobject(file) { const photo = parse object extend('photo'); const photo = new photo(); const parsefile = new parse file(file name, file); photo set('imagefile', parsefile); return await photo save(); } das abrufen der datei url ist einfach const imagefile = photo get('imagefile'); const imageurl = imagefile url(); sie können diese imageurl in ihren react komponenten anzeigen, indem sie sie als src eines \<img> tags festlegen dateisicherheit parse server bietet flexible konfigurationen zur verwaltung der dateiuploadsicherheit das folgende beispiel zeigt, wie sie berechtigungen festlegen können, um zu steuern, wer dateien auf den server hochladen kann enableforpublic wenn auf true gesetzt, erlaubt es jedem, unabhängig vom authentifizierungsstatus, dateien hochzuladen enableforanonymoususer steuert, ob anonyme benutzer (nicht registriert) dateien hochladen können wenn aktiviert, können temporäre oder gastbenutzer dateien hochladen enableforauthenticateduser gibt an, ob nur authentifizierte benutzer dateien hochladen können dies ist ideal, um sicherzustellen, dass nur vertrauenswürdige benutzer zugriff auf diese funktionalität haben schritt 7 – aufgaben mit cloud jobs planen cloud jobs cloud jobs in back4app ermöglichen es ihnen, routinemäßige aufgaben in ihrem backend zu planen und auszuführen wie das bereinigen alter daten oder das versenden einer täglichen zusammenfassungs e mail ein typischer cloud job könnte so aussehen // main js parse cloud job('cleanupoldtodos', async (request) => { // this runs in the background, not triggered by a direct user request const todo = parse object extend('todo'); const query = new parse query(todo); // for example, remove todos older than 30 days const now = new date(); const thirty days = 30 24 60 60 1000; const cutoff = new date(now thirty days); query lessthan('createdat', cutoff); try { const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; } catch (err) { throw new error('error during cleanup ' + err message); } }); stellen sie ihren cloud code bereit mit dem neuen job (über cli oder das dashboard) gehen sie zum back4app dashboard > app einstellungen > servereinstellungen > hintergrundjobs planen sie den job, um täglich oder in einem anderen intervall, das ihren bedürfnissen entspricht, ausgeführt zu werden cloud jobs ermöglichen es ihnen, hintergrundwartung oder andere regelmäßige prozesse zu automatisieren ohne manuelle eingriffe schritt 8 – integration von webhooks webhooks ermöglichen es ihrer back4app app, http anfragen an einen externen dienst zu senden, wann immer bestimmte ereignisse auftreten dies ist leistungsstark für die integration mit drittanbietersystemen wie zahlungs gateways (z b stripe), e mail marketing tools oder analyseplattformen navigieren sie zur webhooks konfiguration in ihrem back4app dashboard > mehr > webhooks und klicken sie dann auf webhook hinzufügen richten sie einen endpunkt ein (z b https //your external service com/webhook endpoint) konfigurieren sie trigger um festzulegen, welche ereignisse in ihren back4app klassen oder cloud code funktionen den webhook auslösen wenn sie beispielsweise einen slack kanal benachrichtigen möchten, wann immer ein neues todo erstellt wird erstellen sie eine slack app, die eingehende webhooks akzeptiert kopieren sie die slack webhook url in ihrem back4app dashboard setzen sie den endpunkt auf diese slack url für das ereignis „neuer datensatz in der todo klasse “ sie können auch benutzerdefinierte http header oder payloads hinzufügen, wenn nötig sie können auch webhooks im cloud code definieren, indem sie benutzerdefinierte http anfragen in triggern wie beforesave, aftersave machen schritt 9 – erkundung des back4app admin panels die back4app admin app ist eine webbasierte verwaltungsoberfläche, die für nicht technische benutzer entwickelt wurde, um crud operationen durchzuführen und routinemäßige datenaufgaben ohne programmierung zu erledigen sie bietet eine modellzentrierte , benutzerfreundliche oberfläche, die die datenbankverwaltung, das benutzerdefinierte datenmanagement und unternehmensweite operationen optimiert aktivierung der admin app aktivieren sie es, indem sie zu app dashboard > mehr > admin app gehen und auf die schaltfläche „admin app aktivieren“ klicken erstellen sie einen ersten admin benutzer (benutzername/passwort), der automatisch eine neue rolle (b4aadminuser) und klassen (b4asetting, b4amenuitem und b4acustomfield) im schema ihrer app generiert wählen sie eine subdomain für den zugriff auf die admin oberfläche und schließen sie die einrichtung ab anmelden mit den admin anmeldeinformationen, die sie erstellt haben, um auf ihr neues admin app dashboard zuzugreifen sobald aktiviert, macht die back4app admin app es einfach, datensätze aus ihrer datenbank anzuzeigen, zu bearbeiten oder zu entfernen ohne direkte nutzung des parse dashboards oder backend codes mit konfigurierbaren zugriffskontrollen können sie diese schnittstelle sicher mit teammitgliedern oder kunden teilen, die eine klare, klickbare möglichkeit benötigen, um daten zu verwalten fazit indem sie dieses umfassende tutorial befolgt haben, haben sie erstellte ein sicheres backend für eine reactjs app auf back4app konfigurierte eine datenbank mit klassenschemas, datentypen und beziehungen integrierte echtzeitanfragen (live queries) für sofortige datenaktualisierungen wendete sicherheitsmaßnahmen an unter verwendung von acls und clps, um den datenzugriff zu schützen und zu verwalten implementierte cloud code funktionen, um benutzerdefinierte geschäftslogik auf der serverseite auszuführen richtete die benutzerauthentifizierung ein mit unterstützung für e mail verifizierung und passwortzurücksetzungen verwaltete datei uploads und abrufe, mit optionalen datei sicherheitskontrollen planete cloud jobs für automatisierte hintergrundaufgaben verwendete webhooks zur integration mit externen diensten erforschte das back4app admin panel für die datenverwaltung mit einem soliden reactjs frontend und einem robusten back4app backend sind sie nun gut gerüstet, um funktionsreiche, skalierbare und sichere anwendungen zu entwickeln setzen sie ihre erkundung fort, integrieren sie ihre geschäftslogik und nutzen sie die leistungsfähigkeit von back4app, um ihnen unzählige stunden in der server und datenbankverwaltung zu sparen viel spaß beim programmieren! nächste schritte erstellen sie eine produktionsbereite reactjs app indem sie dieses backend erweitern, um komplexere datenmodelle, caching strategien und leistungsoptimierungen zu handhaben integrieren sie erweiterte funktionen wie spezialisierte authentifizierungsabläufe, rollenbasierte zugriffskontrolle oder externe apis (wie zahlungs gateways) sehen sie sich die offizielle dokumentation von back4app an für tiefere einblicke in erweiterte sicherheit, leistungsoptimierung und protokollanalyse erforschen sie andere tutorials zu echtzeit chat anwendungen, iot dashboards oder standortbasierten diensten sie können die hier erlernten techniken mit drittanbieter apis kombinieren, um komplexe, reale anwendungen zu erstellen