API 就是兩個程式之間的溝通介面。REST API 用 HTTP 方法表達操作:
GET /api/todos → 取得所有
POST /api/todos → 新增
PUT /api/todos/3 → 更新第 3 筆
DELETE /api/todos/3 → 刪除第 3 筆API 就是兩個程式之間的溝通介面。REST API 用 HTTP 方法表達操作:
GET /api/todos → 取得所有
POST /api/todos → 新增
PUT /api/todos/3 → 更新第 3 筆
DELETE /api/todos/3 → 刪除第 3 筆# pip install flask
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route("/api/hello")
def hello():
name = request.args.get("name", "陌生人")
return jsonify({"greeting": f"哈囉,{name}!"})
@app.route("/api/echo", methods=["POST"])
def echo():
data = request.get_json()
return jsonify({"你傳送了": data})
if __name__ == "__main__":
app.run(debug=True, port=5000)from flask import Flask, jsonify, request, abort
app = Flask(__name__)
todos = []; next_id = 1
@app.route("/api/todos", methods=["GET"])
def get_todos():
return jsonify(todos)
@app.route("/api/todos", methods=["POST"])
def create_todo():
global next_id
data = request.get_json()
todo = {"id": next_id, "title": data["title"], "done": False}
next_id += 1; todos.append(todo)
return jsonify(todo), 201
@app.route("/api/todos/", methods=["DELETE"])
def delete_todo(todo_id):
global todos
todos = [t for t in todos if t["id"] != todo_id]
return jsonify({"message": "已刪除"}) # pip install schedule
import schedule, time
def daily_task():
print("執行每日任務...")
schedule.every().day.at("09:00").do(daily_task)
while True:
schedule.run_pending()
time.sleep(30)