使用 Python 构建简单的 RESTful API
使用 Python 构建简单的 RESTful API
1. 简介
本文档介绍如何使用 Python 和 Flask 框架构建简单的 RESTful API,用于管理用户信息。
2. 环境准备
- Python 3.6 或更高版本
- Flask 框架
- pip 包管理工具
使用 pip 安装 Flask:
bash
pip install Flask
3. 项目结构
api/
├── app.py
├── models.py
├── config.py
└── tests/
└── test_api.py
4. 代码实现
4.1 app.py
```python from flask import Flask, jsonify, request from models import User
app = Flask(name)
@app.route('/users', methods=['GET']) def get_users(): users = User.get_all() return jsonify(users)
@app.route('/users/
@app.route('/users', methods=['POST']) def create_user(): data = request.get_json() user = User(**data) user.save() return jsonify(user), 201
@app.route('/users/
@app.route('/users/
if name == 'main': app.run(debug=True) ```
4.2 models.py
```python from config import DATABASE_URI import sqlite3
class User: def init(self, id=None, name=None, email=None): self.id = id self.name = name self.email = email
@classmethod
def get_all(cls):
conn = sqlite3.connect(DATABASE_URI)
cursor = conn.cursor()
cursor.execute('SELECT * FROM users')
users = cursor.fetchall()
conn.close()
return [cls(*user) for user in users]
@classmethod
def get_by_id(cls, user_id):
conn = sqlite3.connect(DATABASE_URI)
cursor = conn.cursor()
cursor.execute('SELECT * FROM users WHERE id=?', (user_id,))
user = cursor.fetchone()
conn.close()
if user:
return cls(*user)
else:
return None
def save(self):
conn = sqlite3.connect(DATABASE_URI)
cursor = conn.cursor()
cursor.execute('INSERT INTO users (name, email) VALUES (?, ?)', (self.name, self.email))
self.id = cursor.lastrowid
conn.commit()
conn.close()
def update(self, data):
conn = sqlite3.connect(DATABASE_URI)
cursor = conn.cursor()
cursor.execute('UPDATE users SET name=?, email=? WHERE id=?', (data.get('name'), data.get('email'), self.id))
conn.commit()
conn.close()
self.name = data.get('name')
self.email = data.get('email')
def delete(self):
conn = sqlite3.connect(DATABASE_URI)
cursor = conn.cursor()
cursor.execute('DELETE FROM users WHERE id=?', (self.id,))
conn.commit()
conn.close()
```
4.3 config.py
python
DATABASE_URI = 'database.db'
5. 运行 API
在项目根目录下运行以下命令:
bash
flask run
6. 测试 API
- 使用 Postman 或 curl 工具发送 HTTP 请求到 API 地址。
- 例如:获取所有用户列表:
GET /users
- 创建新用户:
POST /users
,请求体:{"name": "John Doe", "email": "[email protected]"}
7. 总结
本文档介绍了使用 Python 和 Flask 框架构建简单的 RESTful API 的基本步骤,涵盖了常见的 CRUD 操作。用户可以根据实际需求扩展 API 功能和数据库模型。
- 本文标签: 技术
- 本文链接: https://blog.sandy1029.cloud/article/58
- 版权声明: 本文由nisan原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权