Backend-Vorlage

Todo-App-Backend-Vorlage
REST API

Ein produktionsbereites REST API Todo Backend-Schema und Starter Kit auf Back4app: ER-Diagramm, Datenwörterbuch, JSON-Schema, API-Spielplatz, Codebeispiele und ein One-Click KI-Agent Prompt zur Bereitstellung in Minuten.

Übersicht

Eine Todo-App ist einer der häufigsten Ausgangspunkte zum Lernen der Backend-Entwicklung. Im Hintergrund benötigt sie Benutzerregistrierung, Aufgaben-CRUD, besitzbasierte Zugriffskontrolle und optional Echtzeitsynchronisation.

Das folgende Schema definiert zwei Klassen — _User (integriert) und Todo — die durch einen Pointer verbunden sind. Mit dem Back4app REST API SDK können Sie von Ihrer App aus mit diesem Backend interagieren — Abfragen, Erstellen, Aktualisieren und Löschen von Objekten — ohne eine benutzerdefinierte API-Schicht zu schreiben.

er.heading

er.subtitle

erDiagram _User { String objectId PK String username String email String password Date createdAt Date updatedAt } Todo { String objectId PK String title Boolean done Date dueDate Number priority Pointer owner FK Date createdAt Date updatedAt } _User ||--o{ Todo : "owns"
Diagramm wird geladen…
Diagrammquelle anzeigen
erDiagram
    _User {
        String objectId PK
        String username
        String email
        String password
        Date createdAt
        Date updatedAt
    }

    Todo {
        String objectId PK
        String title
        Boolean done
        Date dueDate
        Number priority
        Pointer owner FK
        Date createdAt
        Date updatedAt
    }

    _User ||--o{ Todo : "owns"

Datenwörterbuch

Vollständige Feldreferenz für jede Klasse im Schema.

Todo

FeldTypBeschreibungErforderlich
objectIdStringAuto-generated unique identifierauto
titleStringShort description of the task
doneBooleanWhether the task is completed
dueDateDateOptional deadline for the task
priorityNumberPriority level (1 = high, 3 = low)
ownerPointer<_User>User who owns this task
createdAtDateAuto-generated creation timestampauto
updatedAtDateAuto-generated last-update timestampauto

_User

FeldTypBeschreibungErforderlich
objectIdStringAuto-generated unique identifierauto
usernameStringLogin username
emailStringEmail address
passwordStringHashed password (write-only)
createdAtDateAuto-generated creation timestampauto
updatedAtDateAuto-generated last-update timestampauto

Schema (JSON)

Rohes JSON-Schema-Definition — kopieren und in Ihrer Back4app-App verwenden oder über die API importieren.

{
  "classes": [
    {
      "className": "Todo",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "title": {
          "type": "String",
          "required": true
        },
        "done": {
          "type": "Boolean",
          "required": false,
          "defaultValue": false
        },
        "dueDate": {
          "type": "Date",
          "required": false
        },
        "priority": {
          "type": "Number",
          "required": false,
          "defaultValue": 3
        },
        "owner": {
          "type": "Pointer",
          "targetClass": "_User",
          "required": false
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    },
    {
      "className": "_User",
      "fields": {
        "objectId": {
          "type": "String",
          "required": false
        },
        "username": {
          "type": "String",
          "required": true
        },
        "email": {
          "type": "String",
          "required": true
        },
        "password": {
          "type": "String",
          "required": true
        },
        "createdAt": {
          "type": "Date",
          "required": false
        },
        "updatedAt": {
          "type": "Date",
          "required": false
        }
      }
    }
  ]
}

Mit AI-Agent bauen

Drücken Sie die Schaltfläche unten, um den Agenten mit der vorab ausgefüllten Eingabeaufforderung dieser Vorlage zu öffnen.

Back4app AI-Agent
Bereit zum Bauen
Erstellen Sie eine Todo-App auf Back4app mit diesem genauen Schema und Verhalten.

Schema:
1. _User (verwenden Sie die integrierte Back4app): Benutzername (String, erforderlich), E-Mail (String, erforderlich), Passwort (String, erforderlich); objectId, createdAt, updatedAt (System).
2. Todo: Titel (String, erforderlich), erledigt (Boolean, Standard: false), Fälligkeitsdatum (Date, optional), Priorität (Number, Standard: 3; 1=hoch, 2=mittel, 3=niedrig), Eigentümer (Pointer zu _User; beim Erstellen auf aktuellen Benutzer setzen); objectId, createdAt, updatedAt (System).

Sicherheit:
- Setzen Sie ACLs für jedes Todo, sodass nur der Eigentümer lesen und schreiben kann. Kein öffentlicher Lese-/Schreibzugriff.
- Beim Erstellen setzen Sie Todo.owner auf den aktuellen Benutzer (z. B. über Cloud Code beforeSave oder clientseitig).
- Verwenden Sie Klassenebenenberechtigungen, damit nur authentifizierte Benutzer Todo erstellen/lesen/aktualisieren/löschen können.

Auth:
- Registrierung (Benutzername, E-Mail, Passwort) und Anmeldung; Unterstützung für Abmeldung/Sitzung.
- Nach der Anmeldung sollte die App nur CRUD für die Todos des aktuellen Benutzers anzeigen und erlauben.

Verhalten:
- Vollständiges CRUD für Todo: erstellen, auflisten (nur des Eigentümers), eines abrufen, aktualisieren (erledigt umschalten, Titel, Fälligkeitsdatum, Priorität bearbeiten), löschen.
- Todos mit Sortierung auflisten (z. B. nach Priorität dann Fälligkeitsdatum oder createdAt). Standardpriorität für neue Todos: 3 (niedrig).

Lieferung:
- Erstellen Sie die Back4app-App mit dem obigen Schema, ACLs und allen benötigten Cloud Codes (z. B. beforeSave auf Todo, um den Eigentümer festzulegen).
- Generieren Sie das Frontend und verbinden Sie es mit diesem Backend; bereitstellen, damit die App end-to-end lauffähig ist.

50 kostenlose Prompts / MonatKeine Kreditkarte erforderlich

API Playground

Testen Sie die REST- und GraphQL-Endpunkte für das Todo-Schema. Antworten aus den obigen Beispieldaten — kein Back4app-Konto erforderlich.

GET
https://parseapi.back4app.com/classes/Todo
Header
{
  "X-Parse-Application-Id": "YOUR_APP_ID",
  "X-Parse-REST-API-Key": "YOUR_REST_API_KEY"
}

usage.restApi.heading

usage.restApi.subtitle

1

usage.restApi.step1Title

usage.restApi.step1Body

# Required headers for every request
X-Parse-Application-Id: YOUR_APP_ID
X-Parse-REST-API-Key: YOUR_REST_API_KEY
2

usage.restApi.step2Title

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 '{"title":"Buy groceries","done":false,"priority":2}' \
  https://parseapi.back4app.com/classes/Todo
3

usage.restApi.step3Title

curl -X GET \
  -H "X-Parse-Application-Id: YOUR_APP_ID" \
  -H "X-Parse-REST-API-Key: YOUR_REST_API_KEY" \
  https://parseapi.back4app.com/classes/Todo
4

usage.restApi.step4Title

curl -X PUT \
  -H "X-Parse-Application-Id: YOUR_APP_ID" \
  -H "X-Parse-REST-API-Key: YOUR_REST_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"done":true}' \
  https://parseapi.back4app.com/classes/Todo/OBJECT_ID
5

usage.restApi.step5Title

curl -X DELETE \
  -H "X-Parse-Application-Id: YOUR_APP_ID" \
  -H "X-Parse-REST-API-Key: YOUR_REST_API_KEY" \
  https://parseapi.back4app.com/classes/Todo/OBJECT_ID

Häufig gestellte Fragen

Häufige Fragen zum Backend-Template der Todo-App.

Was ist Back4app?

Back4app ist das Backend hinter Todo- und Aufgaben-Apps. Für REST erhalten Sie klare GET/POST/PUT-Endpunkte für Todo und X-Parse-Session-Token-Auth—kein Server, den Sie schreiben oder hosten müssen.

Warum Back4app für ein Todo REST API verwenden?

Back4app bietet eine spezifikationsbereite REST API für Todo: klare GET/POST/PUT/DELETE-Endpunkte, X-Parse-Session-Token-Auth und einen API-Spielplatz. Es passt zu jedem Stack, der HTTP spricht und ein verwaltetes BaaS anstelle eines benutzerdefinierten Backends wünscht.

Was ist die Todo-Klasse in REST API?

Todo ist eine Back4app-Klasse mit Titel, erledigt, Fälligkeitsdatum, Priorität und Besitzer (Zeiger auf _User). REST-Endpunkte: GET/POST /classes/Todo, GET/PUT/DELETE /classes/Todo/:id. Antworten enthalten objectId, createdAt, updatedAt.

Wie sende ich das Sitzungstoken in REST?

Fügen Sie den X-Parse-Session-Token-Header mit dem Wert hinzu, der beim Login zurückgegeben wurde. Der Server erzwingt ACLs, sodass nur die Todos des Besitzers zurückgegeben oder geändert werden. Verwenden Sie diesen Header bei jeder authentifizierten Anfrage.

Kann ich Felder zu Todo über REST API hinzufügen?

Ja. POST oder PUT JSON mit neuen Feldern; das flexible Schema von Back4app akzeptiert sie. Fügen Sie Felder über das Dashboard hinzu, wenn Sie möchten. Keine Migrationen.

Wie frage ich Todos nach Priorität mit REST ab?

Verwenden Sie GET /classes/Todo?where={"priority":1}&order=priority. Der where-Parameter unterstützt Vergleichsoperatoren ($lt, $gt usw.); order und -order steuern die Sortierung. Verwenden Sie limit und skip für die Paginierung.

Ist Echtzeit für REST-Clients verfügbar?

Live Queries verwenden WebSockets und sind für Echtzeit-Updates verfügbar. Für REST-Clients allein, poll den GET-Endpunkt oder verwenden Sie REST API für CRUD und einen separaten Abonnementsmechanismus, falls erforderlich.

Wie füge ich Kategorien oder Tags über REST hinzu?

Fügen Sie ein Tags-Array oder eine Kategorie-Klasse und -Beziehung hinzu. Senden Sie die neuen Felder in den POST/PUT-Body.

Bereit, Ihre Todo-App zu erstellen?

Starten Sie Ihr Projekt in wenigen Minuten – wählen Sie eine Technologie und folgen Sie der Anleitung oder lassen Sie den KI-Agenten es für Sie erstellen. Keine Kreditkarte erforderlich.