hero.badgeHub
Todo 應用程式後端模板
REST API
可生產的 REST API Todo 後端模式和 Starter Kit on Back4app:ER 圖、資料辭典、JSON 結構圖、API playground、程式碼範例,以及可在幾分鐘內部署的一鍵式 AI Agent提示。
概述
Todo 應用程式是學習後端開發最常見的起點之一。它需要使用者註冊、任務 CRUD、基於所有權的存取控制,以及可選擇的即時同步。
下面的模式定義了兩個類別 - _User(內建)和 Todo,它們由一個 Pointer 連接。使用 Back4app REST API SDK,您可以從應用程式與此後端互動 - 查詢、建立、更新及刪除物件 - 而無需撰寫自訂 API 層。
ER 圖
Todo 應用程式資料模型的實體關係圖。
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
| 現場 | 類型 | 說明 | 必須 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| title | String | Short description of the task | |
| done | Boolean | Whether the task is completed | — |
| dueDate | Date | Optional deadline for the task | — |
| priority | Number | Priority level (1 = high, 3 = low) | — |
| owner | Pointer<_User> | User who owns this task | — |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-generated last-update timestamp | 自動 |
_User
| 現場 | 類型 | 說明 | 必須 |
|---|---|---|---|
| objectId | String | Auto-generated unique identifier | 自動 |
| username | String | Login username | |
| String | Email address | ||
| password | String | Hashed password (write-only) | |
| createdAt | Date | Auto-generated creation timestamp | 自動 |
| updatedAt | Date | Auto-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 Agent 建立
按下下面的按鈕,即可開啟預先填入此範本提示的 Agent。
AI 代理商
準備建造
請使用以下確切的架構與行為在 Back4app 上建立 Todo 應用程式。 架構: 1. _User(使用 Back4app 內建):username(字串,必填)、email(字串,必填)、password(字串,必填);objectId、createdAt、updatedAt(系統)。 2. Todo:title(字串,必填)、done(布林,預設:false)、dueDate(日期,選填)、priority(數字,預設: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)、刪除。 - 列出 todo 並排序(例如依 priority 再 dueDate 或 createdAt)。新 todo 的預設 priority:3(低)。 交付: - 使用上述架構、ACL 及所需 Cloud Code(例如在 Todo 的 beforeSave 設定 owner)建立 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"
}將此後端與 REST API 搭配使用
使用標準 HTTP 請求連線至您的 Back4app 後端。
1
取得 API 憑證
在 Back4app 建立應用程式後,請在 App Settings → Security & Keys 中找到您的 Application ID 與 REST API Key。所有請求皆需要這些標頭。
# Required headers for every request
X-Parse-Application-Id: YOUR_APP_ID
X-Parse-REST-API-Key: YOUR_REST_API_KEY2
建立待辦
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/Todo3
列出所有待辦
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/Todo4
更新待辦
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_ID5
刪除待辦
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 和 X-Parse-Session-Token auth 獲得清晰的 GET/POST/PUT 端點,而無需伺服器寫入或託管。
為什麼 Todo REST API 要使用 Back4app?
Back4app 為 Todo 提供了一個規範就緒的 REST API:清晰的 GET/POST/PUT/DELETE 端點、X-Parse-Session-Token 認證,以及 API playground。它適用於任何使用 HTTP 的堆疊,並且需要一個受管理的 BaaS來取代自訂的後端。
在 REST API 中,Todo 類是什麼?
Todo 是一個 Back4app 類,包含 title、done、dueDate、priority 和 owner (指向 _User)。REST 端點:GET/POST /classes/Todo, GET/PUT/DELETE /classes/Todo/:id。回應包括 objectId、createdAt、updidatedAt。
如何在 REST 中傳送會話標記?
包含 X-Parse-Session-Token 標頭與登入時傳回的值。伺服器會強制執行 ACL,因此只有擁有者的 todos 才會被傳回或修改。在每次認證請求中使用此標頭。
我可以通过 REST API 向 Todo 添加字段吗?
是的。POST 或 PUT 新欄位的 JSON;Back4app 的靈活模式接受它們。如果您願意,也可以從儀表板新增欄位。無遷移。
如何使用 REST 按優先順序查詢 todos?
使用 GET /classes/Todo?where={"priority":1}&order=priority。where 參數支援比較運算符號 ($lt、$gt 等);order 及 -order 控制排序。使用 limit 和 skip 進行分頁。
REST 用戶端是否提供即時功能?
Live Queries 使用 WebSockets 並可用於即時更新。對於僅用於 REST 的用戶端,可輪詢 GET 端點,或使用 REST API 進行 CRUD,並在需要時使用單獨的訂閱機制。
如何透過 REST 新增類別或標籤?
新增標籤陣列或類別和關係。在 POST/PUT 體中傳送新欄位。使用 where 進行過濾查詢。
準備好建立您的 Todo App 嗎?
finalCta.subtitleHub