백엔드 템플릿

할 일 앱 백엔드 템플릿
REST API

생산 준비가 완료된 REST API 할 일 백엔드 스키마와 스타터 키트가 Back4app에 있습니다: ER 다이어그램, 데이터 사전, JSON 스키마, API 플레이그라운드, 코드 예제, 그리고 몇 분 안에 배포할 수 있는 원클릭 AI 에이전트 프롬프트.

개요

Todo 앱은 백엔드 개발 학습을 위한 가장 일반적인 시작점 중 하나입니다. 내부적으로 사용자 등록, 작업 CRUD, 소유 기반 접근 제어 및 선택적으로 실시간 동기화가 필요합니다.

아래 스키마는 _User (내장) 및 Todo라는 두 클래스를 정의하며, 이들은 포인터로 연결되어 있습니다. Back4app REST API SDK를 사용하면 앱에서 이 백엔드와 상호작용할 수 있습니다 — 객체를 쿼리하고, 생성하고, 업데이트하고, 삭제하는 작업을 사용자 정의 API 레이어를 작성하지 않고도 수행할 수 있습니다.

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"
다이어그램 로딩 중…
다이어그램 소스 보기
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"

데이터 사전

스키마의 모든 클래스에 대한 필드 참조 완전 목록입니다.

Todo

필드유형설명필수
objectIdStringAuto-generated unique identifier자동
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 timestamp자동
updatedAtDateAuto-generated last-update timestamp자동

_User

필드유형설명필수
objectIdStringAuto-generated unique identifier자동
usernameStringLogin username
emailStringEmail address
passwordStringHashed password (write-only)
createdAtDateAuto-generated creation timestamp자동
updatedAtDateAuto-generated last-update timestamp자동

스키마 (JSON)

원시 JSON 스키마 정의 — Back4app 앱에서 복사하여 사용하거나 API를 통해 가져오세요.

{
  "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
        }
      }
    }
  ]
}

AI 에이전트로 빌드하기

아래 버튼을 눌러 이 템플릿의 프롬프트가 미리 채워진 상태로 에이전트를 엽니다.

Back4app AI 에이전트
빌드할 준비가 되었습니다
이 정확한 스키마와 동작으로 Back4app에서 Todo 앱을 만드세요.

스키마:
1. _User ( Back4app 내장 사용): username (String, 필수), email (String, 필수), password (String, 필수); objectId, createdAt, updatedAt (시스템).
2. Todo: title (String, 필수), done (Boolean, 기본값: false), dueDate (Date, 선택적), priority (Number, 기본값: 3; 1=높음, 2=중간, 3=낮음), owner (현재 사용자로 설정된 _User에 대한 포인터); objectId, createdAt, updatedAt (시스템).

보안:
- 모든 Todo에 ACL을 설정하여 소유자만 읽고 쓸 수 있도록 합니다. 공개 읽기/쓰기는 없습니다.
- 생성 시 Todo.owner를 현재 사용자로 설정합니다 (예: Cloud Code beforeSave 또는 클라이언트 측을 통해).
- 클래스 수준 권한을 사용하여 인증된 사용자만 Todo를 생성/읽기/업데이트/삭제할 수 있도록 합니다.

인증:
- 회원가입 (username, email, password) 및 로그인; 로그아웃/세션 지원.
- 로그인 후, 앱은 현재 사용자의 Todo에 대한 CRUD만 표시하고 허용해야 합니다.

동작:
- Todo에 대한 전체 CRUD: 생성, 목록 (소유자만), 하나 가져오기, 업데이트 (done 전환, 제목, dueDate, priority 편집), 삭제.
- 우선순위 또는 createdAt에 따라 정렬하여 todos 목록을 표시합니다. 새 Todo의 기본 우선순위: 3 (낮음).

전달:
- 위의 스키마, ACL 및 필요한 Cloud Code (예: 소유자를 설정하기 위한 Todo의 beforeSave)를 사용하여 Back4app 앱을 만드세요.
- 프론트엔드를 생성하고 이를 백엔드에 연결하세요; 앱이 엔드 투 엔드로 실행 가능하도록 배포하세요.

한 달에 50개의 무료 프롬프트신용 카드 필요 없음

API 플레이그라운드

Todo 스키마에 대한 REST 및 GraphQL 엔드포인트를 사용해 보세요. 위의 예제 데이터에서 응답 — Back4app 계정이 필요하지 않습니다.

GET
https://parseapi.back4app.com/classes/Todo
헤더
{
  "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

자주 묻는 질문

Todo 앱 백엔드 템플릿에 대한 일반적인 질문입니다.

Back4app는 무엇인가요?

Back4app는 Todo 및 작업 앱의 백엔드입니다. REST를 사용하면 Todo에 대한 명확한 GET/POST/PUT 엔드포인트와 X-Parse-Session-Token 인증을 제공합니다—서버를 작성하거나 호스팅할 필요가 없습니다.

Todo REST API에 Back4app를 사용하는 이유는 무엇인가요?

Back4app는 Todo를 위한 사양 준비된 REST API를 제공합니다: 명확한 GET/POST/PUT/DELETE 엔드포인트, X-Parse-Session-Token 인증, 그리고 API 플레이그라운드. HTTP를 사용하는 모든 스택에 적합하며, 커스텀 백엔드 대신 관리되는 BaaS를 원합니다.

REST API의 Todo 클래스는 무엇인가요?

Todo는 제목, 완료 여부, 기한, 우선순위 및 소유자(_User에 대한 포인터)를 가진 Back4app 클래스입니다. REST 엔드포인트: GET/POST /classes/Todo, GET/PUT/DELETE /classes/Todo/:id. 응답에는 objectId, createdAt, updatedAt이 포함됩니다.

REST에서 세션 토큰을 어떻게 전송하나요?

로그인 시 반환된 값을 가진 X-Parse-Session-Token 헤더를 포함하세요. 서버는 ACL을 적용하므로 소유자의 Todo만 반환되거나 수정됩니다. 모든 인증된 요청에 이 헤더를 사용하세요.

나는 REST API를 통해 Todo에 필드를 추가할 수 있나요?

네. 새로운 필드가 포함된 JSON을 POST 또는 PUT하세요; Back4app의 유연한 스키마가 이를 수용합니다. 대시보드에서 필드를 추가할 수도 있습니다. 마이그레이션이 필요 없습니다.

REST로 우선순위에 따라 todos를 어떻게 쿼리하나요?

GET /classes/Todo?where={"priority":1}&order=priority를 사용하세요. where 매개변수는 비교 연산자($lt, $gt 등)를 지원하며; order 및 -order는 정렬을 제어합니다. limit와 skip을 사용하여 페이지네이션을 수행하세요.

REST 클라이언트를 위한 실시간 기능이 제공되나요?

Live Queries는 WebSockets를 사용하며 실시간 업데이트를 위해 사용할 수 있습니다. REST 전용 클라이언트의 경우, GET 엔드포인트를 폴링하거나 CRUD를 위한 REST API와 필요시 별도의 구독 메커니즘을 사용하세요.

REST를 통해 카테고리나 태그를 어떻게 추가하나요?

태그 배열 또는 카테고리 클래스와 관계를 추가하세요. 새 필드를 POST/PUT 본문에 전송하세요. 필터링을 위해 where로 쿼리하세요.

할 일 앱을 만들 준비가 되셨나요?

몇 분 안에 프로젝트를 시작하세요 — 기술을 선택하고 가이드를 따르거나 AI 에이전트가 대신 구축하도록 하세요. 신용 카드가 필요하지 않습니다.