⚠️ Python编写简易API

简介: Python编写简易API

本文约550字,将耗费您约4⃣️分钟


所有的操作,仅在mac系统上实操过


前期准备


创建一个虚拟环境:


$ mkdir flask_restful
$ cd flask_restful
$ python3 -m venv venv
复制代码


激活虚拟环境:


$ . venv/bin/activate
复制代码


虚拟环境退出:


$ deactivate
复制代码


安装flaskflask_restful


$ pip install flask
$ pip install flask_restful
复制代码


项目接口模拟


在项目的根目录下面新建文件api.py,在此文件中进行数据的增删改查。


⚠️ 这里使用到的数据为模拟数据,并未连接数据库


from flask import Flask, jsonify, request
from flask_restful import Api, Resource
app = Flask(__name__)
api = Api(app)
USER_LIST = [{'id': 1, 'name': 'jimmy'}]
class UserListApi(Resource):
    def get(self):
        return {'code': 10000, 'msg': 'get list success', 'data': USER_LIST}
    def post(self):
        json_data = request.get_json()
        new_id = len(USER_LIST) + 1
        USER_LIST.append({'id': new_id, 'name': json_data.get('name')})
        return jsonify({'code': 10000, 'msg': 'add user success', 'data': USER_LIST[new_id-1]})
class UserApi(Resource):
    def get(self, id):
        return {'code': 10000, 'msg': 'get user success', 'data': {}}
    def put(self, id):
        return {'code': 10000, 'msg': 'update user success', 'data': {}}
    def delete(self, id):
        return {'code': 10000, 'msg': 'remove user success', 'data': {}}
api.add_resource(UserListApi, '/users')
api.add_resource(UserApi, '/users/<int:id>')
if __name__ == '__main__':
    app.run(debug=True)
复制代码


之后运行应用:


$ export FLASK_APP=api.py
$ export FLASK_ENV=development
$ flask run
复制代码


看到下面的输出,说明运行成功了:


* Serving Flask app "flaskr" (lazy loading)
 * Environment: development
 * Debug mode: on
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 577-682-777
复制代码


项目接口验证


在上面的代码中,我们对users进行了相关的增删改查,下面我们来验证下:


  • 新增一个用户


$ curl http://127.0.0.1:5000/users -X POST -H "Content-Type:application/json" -d '{"name": "tom"}'
{
  "code": 10000, 
  "data": {
    "id": 2, 
    "name": "tom"
  }, 
  "msg": "add user success"
}
复制代码


  • 查询整个用户列表


$ curl http://127.0.0.1:5000/users
{
    "code": 10000,
    "msg": "get list success",
    "data": [
        {
            "id": 1,
            "name": "jimmy"
        },
        {
            "id": 2,
            "name": "tom"
        }
    ]
}
复制代码


  • 更新一个用户


$ curl http://127.0.0.1:5000/users/1 -X PUT
{
    "code": 10000,
    "msg": "update user success",
    "data": {}
}
复制代码


  • 获取一个用户


$ curl http://127.0.0.1:5000/users/1
{
    "code": 10000,
    "msg": "get user success",
    "data": {}
}
复制代码


  • 删除一个用户


$ curl http://127.0.0.1:5000/users/1 -X DELETE
{
    "code": 10000,
    "msg": "remove user success",
    "data": {}
}



相关文章
|
1月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南
|
1月前
|
JSON API 数据安全/隐私保护
Python采集淘宝拍立淘按图搜索API接口及JSON数据返回全流程指南
通过以上流程,可实现淘宝拍立淘按图搜索的完整调用链路,并获取结构化的JSON商品数据,支撑电商比价、智能推荐等业务场景。
|
1月前
|
Cloud Native 算法 API
Python API接口实战指南:从入门到精通
🌟蒋星熠Jaxonic,技术宇宙的星际旅人。深耕API开发,以Python为舟,探索RESTful、GraphQL等接口奥秘。擅长requests、aiohttp实战,专注性能优化与架构设计,用代码连接万物,谱写极客诗篇。
Python API接口实战指南:从入门到精通
|
2月前
|
JSON API 数据安全/隐私保护
Python采集淘宝评论API接口及JSON数据返回全流程指南
Python采集淘宝评论API接口及JSON数据返回全流程指南
|
2月前
|
缓存 监控 供应链
唯品会自定义 API 自定义操作深度分析及 Python 实现
唯品会开放平台提供丰富API,支持商品查询、订单管理、促销活动等电商全流程操作。基于OAuth 2.0认证机制,具备安全稳定的特点。通过组合调用基础接口,可实现数据聚合、流程自动化、监控预警及跨平台集成,广泛应用于供应链管理、数据分析和智能采购等领域。结合Python实现方案,可高效完成商品搜索、订单分析、库存监控等功能,提升电商运营效率。
|
2月前
|
缓存 监控 供应链
京东自定义 API 操作深度分析及 Python 实现
京东开放平台提供丰富API接口,支持商品、订单、库存等电商全链路场景。通过自定义API组合调用,可实现店铺管理、数据分析、竞品监控等功能,提升运营效率。本文详解其架构、Python实现与应用策略。
缓存 监控 供应链
62 0
缓存 监控 数据挖掘
50 0
JSON 监控 API
66 0
|
3月前
|
JSON 测试技术 API
深度分析爱回收API接口,用Python脚本实现
爱回收(Aihuishou)是国内领先的电子产品回收与以旧换新平台,提供设备估价、订单管理、物流跟踪、结算等全链路API服务,支持企业客户构建回收业务系统。需通过企业合作申请接口权限,本文详解其API体系、认证机制及Python调用方案。

推荐镜像

更多