Base URL: http://localhost:3000/api
所有 API 回應都使用統一格式:
成功:
{
"success": true,
"data": { ... }
}失敗:
{
"success": false,
"error": "錯誤訊息"
}GET /api/todos
回應範例:
{
"success": true,
"data": [
{
"id": 1,
"title": "買牛奶",
"completed": false,
"createdAt": "2024-01-01T12:00:00.000Z"
},
{
"id": 2,
"title": "寫程式",
"completed": true,
"createdAt": "2024-01-01T13:00:00.000Z"
}
]
}POST /api/todos
請求 Body:
{
"title": "待辦事項標題"
}回應範例:
{
"success": true,
"data": {
"id": 3,
"title": "待辦事項標題",
"completed": false,
"createdAt": "2024-01-01T14:00:00.000Z"
}
}錯誤回應(400):
{
"success": false,
"error": "標題不能為空"
}PATCH /api/todos/:id
請求 Body(可只傳要更新的欄位):
{
"title": "新標題",
"completed": true
}回應範例:
{
"success": true,
"data": {
"id": 1,
"title": "新標題",
"completed": true,
"createdAt": "2024-01-01T12:00:00.000Z"
}
}錯誤回應(404):
{
"success": false,
"error": "找不到該待辦事項"
}DELETE /api/todos/:id
回應範例:
{
"success": true,
"data": {
"id": 1
}
}錯誤回應(404):
{
"success": false,
"error": "找不到該待辦事項"
}200- 成功201- 建立成功400- 請求錯誤(如缺少必要欄位)404- 找不到資源500- 伺服器錯誤
後端已設定 CORS,允許來自 http://localhost:5173 的請求。
如果前端使用不同的 port,請修改 backend/src/middleware/cors.js。