Quickstarters
Feature Overview
Wie man ein Backend für Objective-C erstellt?
39 min
einführung in diesem tutorial lernen sie wie man ein backend für objective c mit back4app erstellt wir werden die integration wesentlicher back4app funktionen durchgehen – wie datenbankverwaltung, cloud code funktionen, rest und graphql apis, benutzerauthentifizierung und echtzeitanfragen – um ein sicheres, skalierbares und robustes backend zu erstellen, das nahtlos mit ihrer ios app kommuniziert wir werden das parse ios sdk verwenden, das open source ist, um all unsere datenanforderungen zu erfüllen sie werden sehen, wie sie die zeit und den aufwand, die für die konfiguration von servern, speicher und sicherheit erforderlich sind, reduzieren können, indem sie die flexible umgebung von back4app nutzen dieses tutorial zeigt codebeispiele in objective c, sodass sie text entsprechend ihrem typischen xcode workflow eingeben können am ende haben sie die bausteine für eine produktionsbereite mobile app, oder sie können sie weiter anpassen, um ihren genauen anwendungsfall zu erfüllen 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 entwicklungsumgebung für objective c stellen sie sicher, dass sie eine aktuelle version von xcode installiert haben laden sie xcode aus dem mac app store herunter https //apps apple com/us/app/xcode/id497799835 kenntnisse über cocoapods oder swift package manager (optional, aber empfohlen) leitfaden für swift package manager https //github com/parse community/parse sdk ios osx vertrautheit mit objective c, grundlagen von ios apps oder verwandten konzepten apples objective c dokumentation https //developer apple com/library/archive/documentation/cocoa/conceptual/programmingwithobjectivec/introduction/introduction html stellen sie sicher, dass sie alle diese voraussetzungen haben, bevor sie beginnen, damit ihre reise reibungslos verläuft schritt 1 – erstellen eines neuen projekts auf back4app und verbinden warum dieser schritt? ein neues back4app projekt ist die grundlage ihres backends es gibt ihnen einen ort, um ihre daten zu speichern, cloud funktionen auszuführen und die sicherheit zu verwalten lassen sie uns damit beginnen, ein back4app projekt zu erstellen ein projekt in back4app erstellen melden sie sich bei ihrem back4app konto an klicken sie auf „neue app“ auf ihrem back4app dashboard benennen sie ihre app (z b „objectivec backend tutorial“) und schließen sie ab sie werden ihre neue app im back4app dashboard sehen diese app wird alle backend konfigurationen verwalten, die wir gleich besprechen werden installation des parse sdk für ios (objective c) back4app arbeitet hand in hand mit dem parse ios sdk dieses sdk optimiert datenoperationen, echtzeitfunktionen, benutzerauthentifizierung und mehr für ihre ios app rufen sie ihre parse schlüssel ab in ihrem back4app dashboard navigieren sie zu app einstellungen oder sicherheit & schlüssel um ihre anwendungs id und client schlüssel die parse server url ist oft https //parseapi back4app com integrieren sie parse mit dem swift package manager oder cocoapods cocoapods pod 'parse' swift package manager öffnen sie xcode, wählen sie „datei“ > „pakete hinzufügen…“ repository hinzufügen https //github com/parse community/parse sdk ios osx bestätigen sie parse in ihrem ios ziel parse in objective c initialisieren öffnen sie appdelegate m und importieren sie das parse modul @import parsecore; // or #import \<parse/parse h> \ (bool)application (uiapplication )application didfinishlaunchingwithoptions (nsdictionary )launchoptions { \[parse initializewithconfiguration \[parseclientconfiguration configurationwithblock ^(id\<parsemutableclientconfiguration> configuration) { configuration applicationid = @"your application id"; configuration clientkey = @"your client key"; configuration server = @"https //parseapi back4app com"; }]]; return yes; } damit ist ihre objective c app sicher mit ihrem back4app backend verbunden sie sind nun bereit, daten auf dem server zu lesen, zu schreiben und zu verwalten schritt 2 – datenbank einrichten 1\ erstellen eines datenmodells (schema) in back4app befinden sich daten in klassen – wie tabellen in einer datenbank angenommen, wir möchten eine einfache „todo“ klasse sie können sie manuell im datenbank bereich des back4app dashboards erstellen fügen sie felder wie titel (string), iscompleted (boolean) usw hinzu 2\ erstellen eines datenmodells mit dem ki agenten back4app bietet einen ki agenten, um ein schema zu generieren öffnen sie den ki agenten in ihrem app dashboard beschreiben sie ihr datenmodell in natürlicher sprache (z b „erstellen sie eine neue todo klasse mit titel, beschreibung und fälligkeitsdatum “) lassen sie die ki alles automatisch für sie einrichten 3\ daten lesen und schreiben mit sdk mit objective c können wir pfobject verwenden, um erstellungs und abfrageoperationen zu handhaben zum beispiel \#import \<parse/parse h> // create a new todo item pfobject todo = \[pfobject objectwithclassname @"todo"]; \[todo setobject @"buy groceries" forkey @"title"]; \[todo setobject @no forkey @"iscompleted"]; \[todo saveinbackgroundwithblock ^(bool succeeded, nserror error) { if (succeeded) { nslog(@"todo saved successfully!"); } else { nslog(@"error saving todo %@", error localizeddescription); } }]; // query all todos pfquery query = \[pfquery querywithclassname @"todo"]; \[query findobjectsinbackgroundwithblock ^(nsarray nullable objects, nserror nullable error) { if (!error) { for (pfobject item in objects) { nslog(@"todo %@", item\[@"title"]); } } }]; 4\ daten lesen und schreiben mit rest wenn sie das sdk lieber überspringen möchten 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 5\ daten lesen und schreiben mit graphql back4app bietet auch eine graphql schnittstelle an mutation { createtodo(input { fields { title "wash the car", iscompleted false } }) { todo { objectid title iscompleted } } } 6\ arbeiten mit live abfragen (optional) wenn ihre ios app echtzeit updates benötigt aktivieren sie live abfragen unter servereinstellungen im back4app dashboard konfigurieren sie parse mit livequeryserverurl \[parse initializewithconfiguration \[parseclientconfiguration configurationwithblock ^(id\<parsemutableclientconfiguration> configuration) { configuration applicationid = @"your app id"; configuration clientkey = @"your client key"; configuration server = @"https //parseapi back4app com"; configuration livequeryserverurl = @"wss\ //your subdomain b4a io"; }]]; abonnieren sie dann echtzeit updates in ihrem objective c code dies stellt sicher, dass ihre benutzeroberfläche die neuesten daten sofort anzeigt schritt 3 – anwendung von sicherheit mit acls und clps zugriffskontrolllisten (acls) und klassenebene berechtigungen (clps) back4app verwendet acls und clps für eine feingranulare sicherheit clps gelten für eine gesamte klasse (tabelle), während acls für einzelne objekte gelten einstellen von klassenebene berechtigungen unter dem datenbank abschnitt wählen sie eine klasse (z b „todo“) klicken sie auf klassenebene berechtigungen steuern sie, wer auf klassenebene lesen, schreiben oder abfragen durchführen kann konfigurieren von acls acls sind objektbezogen zum beispiel pfacl acl = \[pfacl aclwithuser \[pfuser currentuser]]; \[acl setpublicreadaccess\ no]; \[acl setpublicwriteaccess\ no]; todo acl = acl; \[todo saveinbackground]; dieser codeabschnitt beschränkt das lesen/schreiben nur auf den aktuellen benutzer schritt 4 – schreiben von cloud code funktionen warum cloud code? cloud code ist nützlich für serverseitige logik – das verarbeiten von triggern, validierungen oder hintergrundaufgaben es hält ihren code vor dem client verborgen und erhöht die sicherheit beispiel funktion parse cloud define("calculatetextlength", async (request) => { const { text } = request params; if (!text) { throw "no text provided"; } return { length text length }; }); dieses beispiel berechnet die länge eines vom client bereitgestellten strings bereitstellung verwenden sie die back4app cli https //www back4app com/docs/local development/parse cli oder den cloud code > funktionen bereich im dashboard, um ihre main js bereitzustellen cloud code aus objective c aufrufen \[pfcloud callfunctioninbackground @"calculatetextlength" withparameters @{@"text" @"hello back4app"} block ^(id nullable result, nserror nullable error) { if (!error) { nsnumber len = result\[@"length"]; nslog(@"text length %@", len); } }]; schritt 5 – authentifizierung konfigurieren parse benutzer die pfuser klasse von back4app verwaltet die registrierung, anmeldung und sicherheit standardmäßig kümmert sich pfuser um passwort hashing, sitzungen und benutzerfelder registrieren pfuser user = \[pfuser user]; user username = @"alice"; user password = @"secret123"; user email = @"alice\@example com"; \[user signupinbackgroundwithblock ^(bool succeeded, nserror nullable error) { if (succeeded) { nslog(@"user signed up successfully!"); } else { nslog(@"sign up error %@", error localizeddescription); } }]; anmelden \[pfuser loginwithusernameinbackground @"alice" password @"secret123" block ^(pfuser nullable user, nserror nullable error) { if (user) { nslog(@"user logged in %@", user username); } else { nslog(@"login error %@", error localizeddescription); } }]; soziale anmeldung back4app unterstützt facebook , apple , google , usw integrieren sie diese plattformen und verknüpfen sie die benutzersitzungen entsprechend überprüfen sie die dokumentation zur sozialen anmeldung https //www back4app com/docs/platform/sign in with apple schritt 6 – umgang mit dateispeicherung hochladen & abrufen von dateien sie können bilder, dokumente oder andere binäre daten mit pffileobject nsdata imagedata = uiimagepngrepresentation(\[uiimage imagenamed @"localimage"]); pffileobject parsefile = \[pffileobject fileobjectwithname @"image png" data\ imagedata]; pfobject photo = \[pfobject objectwithclassname @"photo"]; \[photo setobject\ parsefile forkey @"imagefile"]; \[photo saveinbackgroundwithblock ^(bool succeeded, nserror nullable error) { if (succeeded) { nslog(@"file uploaded successfully"); } }]; um abzurufen pffileobject photofile = photo\[@"imagefile"]; \[photofile getdatainbackgroundwithblock ^(nsdata nullable data, nserror nullable error) { if (!error) { uiimage image = \[uiimage imagewithdata\ data]; // use the image in your ui } }]; schritt 7 – e mail verifizierung und passwortzurücksetzung warum ist das wichtig? die e mail verifizierung hilft, die gültigkeit des benutzerkontos sicherzustellen die passwortzurücksetzung bietet einen sicheren ablauf, falls benutzer ihre anmeldeinformationen vergessen dashboard konfiguration gehe zu e mail einstellungen in deinem back4app dashboard aktiviere e mail verifizierung und passwortzurücksetzung optionen passe die e mail vorlagen nach bedarf an implementierung wenn sie in ihrer app manuell eine passwortzurücksetzung auslösen möchten \[pfuser requestpasswordresetforemailinbackground @"alice\@example com" block ^(bool succeeded, nserror nullable error) { if (succeeded) { nslog(@"reset email sent!"); } else { nslog(@"error %@", error localizeddescription); } }]; schritt 8 – aufgaben mit cloud jobs planen was sind cloud jobs? cloud jobs automatisieren wiederkehrende aufgaben – wie das bereinigen alter daten, das erstellen täglicher berichte oder das versenden von massenbenachrichtigungen beispiel für einen täglichen bereinigungsjob in ihrer main js parse cloud job("cleanupoldtodos", async (request) => { const todo = parse object extend("todo"); const query = new parse query(todo); const cutoff = new date(date now() 30 24 60 60 1000); query lessthan("createdat", cutoff); const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; }); planen sie es dann in app einstellungen > servereinstellungen > hintergrundjobs sie können beispielsweise eine tägliche ausführung auswählen schritt 9 – webhooks integrieren übersicht webhooks ermöglichen es back4app, http anfragen an externe dienste zu senden, wann immer ereignisse auftreten, wie z b die erstellung von objekten konfiguration in ihrem back4app dashboard > mehr > webhooks fügen sie einen neuen endpunkt (url) hinzu entscheiden sie, welche ereignisse den webhook auslösen (z b nach dem speichern eines todos) schritt 10 – erkundung des back4app admin panels übersicht das back4app admin panel ist eine einfache, modellzentrierte schnittstelle, die nicht technische stakeholder nutzen können, um crud operationen ohne programmierung durchzuführen aktivierung gehe in deinem dashboard zu mehr > admin app und aktiviere es nachdem du deinen ersten admin benutzer erstellt hast, kannst du eine benutzerdefinierte subdomain einrichten, um auf das panel zuzugreifen dieses panel kann alltägliche aufgaben wie das bearbeiten von datensätzen, das anzeigen von protokollen oder das zuweisen von rollen vereinfachen, ohne in die rohdatenbank einzutauchen fazit sie haben nun gesehen wie man ein backend für objective c mit back4app erstellt während dieses tutorials haben sie ein neues back4app projekt erstellt die datenbank mit dem parse ios sdk, rest oder graphql eingerichtet und gelesen echtzeit updates mit live queries aktiviert sicherheit mit acls und clps angewendet cloud code für serverseitige logik bereitgestellt benutzerauthentifizierung, dateispeicherung, e mail verifizierung und passwortzurücksetzungen verwaltet geplante aufgaben und webhooks konfiguriert das admin panel für eine einfache datenverwaltung erkundet dieses fundament ermöglicht es ihnen, ihre ios app zu skalieren, während sie sich auf das front end erlebnis konzentrieren die synergie zwischen objective c und back4app ist ein bewährter weg, um die entwicklung zu beschleunigen und zeit sowie aufwand zu sparen nächste schritte verbessern sie ihr backend mit fortgeschrittener benutzerdefinierter logik, push benachrichtigungen oder analysen integrieren sie externe dienste oder open source bibliotheken für soziale anmeldungen, abrechnung oder messaging überprüfen sie die offizielle back4app dokumentation für optimierungstipps, bewährte verfahren und ausführliche tutorials erstellen sie reale beispiele wie chat apps, gaming highscores oder standortbasierte dienste mit diesen mustern wir hoffen, dass sie diesen leitfaden informativ fanden! die nutzung von back4app und dem parse ios sdk hilft ihnen, ein robustes und sicheres system zu entwickeln, ohne umfangreiche serververwaltung, sodass sie sich auf die erstellung ihres besten mobilen erlebnisses konzentrieren können