⚠️ 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": {}
}



相关文章
|
9天前
|
数据采集 JSON API
如何利用Python爬虫淘宝商品详情高级版(item_get_pro)API接口及返回值解析说明
本文介绍了如何利用Python爬虫技术调用淘宝商品详情高级版API接口(item_get_pro),获取商品的详细信息,包括标题、价格、销量等。文章涵盖了环境准备、API权限申请、请求构建和返回值解析等内容,强调了数据获取的合规性和安全性。
|
1月前
|
API 开发者 Python
如何用Python调用孔夫子API?
要使用Python调用孔夫子旧书网API,需先在开发者平台注册并获取API密钥与调用密钥。示例代码展示了如何利用requests库发送请求,获取并解析搜索结果。使用时需替换密钥,并按API文档调整URL和参数。注意遵守API使用规则及法律法规。
如何用Python调用孔夫子API?
|
17天前
|
存储 API 数据库
使用Python开发获取商品销量详情API接口
本文介绍了使用Python开发获取商品销量详情的API接口方法,涵盖API接口概述、技术选型(Flask与FastAPI)、环境准备、API接口创建及调用淘宝开放平台API等内容。通过示例代码,详细说明了如何构建和调用API,以及开发过程中需要注意的事项,如数据库连接、API权限、错误处理、安全性和性能优化等。
69 5
|
23天前
|
API Python
【Azure Developer】分享一段Python代码调用Graph API创建用户的示例
分享一段Python代码调用Graph API创建用户的示例
46 11
|
25天前
|
JSON 安全 API
Python调用API接口的方法
Python调用API接口的方法
112 5
|
1月前
|
JSON 安全 API
如何使用Python开发API接口?
在现代软件开发中,API(应用程序编程接口)用于不同软件组件之间的通信和数据交换,实现系统互操作性。Python因其简单易用和强大功能,成为开发API的热门选择。本文详细介绍了Python开发API的基础知识、优势、实现方式(如Flask和Django框架)、实战示例及注意事项,帮助读者掌握高效、安全的API开发技巧。
197 3
如何使用Python开发API接口?
|
24天前
|
API Python
利用python淘宝/天猫获得淘宝app商品详情原数据 API
要使用Python获取淘宝/天猫商品详情原数据,需先注册开放平台账号并实名认证,创建应用获取API权限。随后,根据API文档构建请求URL和参数,使用requests库发送请求,处理返回的商品详情数据。注意遵守平台使用规则。
|
27天前
|
供应链 API 开发者
探索Python与1688商品详情API接口的协同效应
在数字化时代,1688作为中国领先的B2B平台,其商品详情API接口为市场分析、库存管理和销售策略提供了重要数据支持。本文介绍如何使用Python调用该API,包括前期准备、技术实现、数据解析及错误处理等内容,助力企业和开发者挖掘数据价值,提升商业智能水平。
|
1月前
|
JSON 前端开发 API
使用Python和Flask构建简易Web API
使用Python和Flask构建简易Web API
|
1月前
|
存储 API 数据库
使用Python和Flask构建简单的RESTful API
使用Python和Flask构建简单的RESTful API