2. 构建简单的RESTful API返回JSON数据
任务说明
本案例使用 Flask 构建一个最小可用的 RESTful API,提供 GET /api/items 接口,返回 JSON 格式的商品列表数据。通过浏览器或 curl 访问该接口,验证响应状态码与 JSON 数据结构。
实现代码
# app.py
from flask import Flask, jsonify
app = Flask(__name__)
# 模拟数据源
ITEMS = [
{"id": 1, "name": "Python编程入门", "price": 59.0},
{"id": 2, "name": "Flask Web开发", "price": 79.0},
{"id": 3, "name": "RESTful API设计指南", "price": 49.0}
]
@app.route('/api/items', methods=['GET'])
def get_items():
"""返回全部商品列表"""
return jsonify({"code": 0, "message": "success", "data": ITEMS})
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000, debug=True)
运行与验证
依赖安装:
pip install flask
启动服务:
python app.py
验证方法:服务启动后,在浏览器访问 http://127.0.0.1:5000/api/items,或使用 curl 命令:
curl http://127.0.0.1:5000/api/items
判定标准:响应状态码为 200 OK,响应体为 JSON 格式,包含 code、message、data 三个字段,其中 data 为包含 3 个商品对象的数组,每个对象含 id、name、price 字段。
预期输出
{
"code": 0,
"message": "success",
"data": [
{"id": 1, "name": "Python编程入门", "price": 59.0},
{"id": 2, "name": "Flask Web开发", "price": 79.0},
{"id": 3, "name": "RESTful API设计指南", "price": 49.0}
]
}