python|python http服务flask架构实用代码详解分析
依赖库
flask安装,使用豆瓣源加速。
pip install flask -i https://pypi.douban.com/simple
gevent安装,使用豆瓣源加速。
pip install gevent -i https://pypi.douban.com/simple
代码
#!/user/bin/env python# coding=utf-8"""@project : TestDemo@author: huyi@file: app.py@ide: PyCharm@time: 2021-10-15 11:58:44"""from flask import Flask, requestfrom gevent.pywsgi import WSGIServerfrom gevent import monkeyimport json # 将python标准的io方法,都替换成gevent中的同名方法,遇到io阻塞gevent自动进行协程切换monkey.patch_all() app = Flask(__name__) # 请求返回实体class TestResponse:def __init__(self,code,success,msg, data):self.code = codeself.success = successself.msg = msgself.data = https://www.it610.com/article/data @app.route('/progress', methods=['POST'])def progress():request_data = https://www.it610.com/article/json.loads(request.data)print("进度回调:{}".format(request_data))return json.dumps(TestResponse(0, True, "progress callback success", None),default=lambda obj: obj.__dict__,sort_keys=True,indent=4) @app.route('/result', methods=['POST'])def result():request_data = https://www.it610.com/article/json.loads(request.data)print("结果回调:{}".format(request_data))return json.dumps(TestResponse(0, True, "result callback success", None),default=lambda obj: obj.__dict__,sort_keys=True,indent=4) if __name__ == '__main__':print("遇事不决,可问春风。")WSGIServer(('0.0.0.0', 8383), app).serve_forever()
使用postman验证结果
文章图片
总结 该代码架构简单有效,不用加过多繁重的东西。如果需要异步非阻塞接口调用的话,可以加个线程池,把执行内容扔个线程出去,一样适用。
如果本文对你有帮助,请点个赞支持一下吧。
文章图片
【python|python http服务flask架构实用代码详解分析】到此这篇关于python http服务flask架构实用代码详解分析的文章就介绍到这了,更多相关python http服务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 画解算法(1.|画解算法:1. 两数之和)
- 逻辑回归的理解与python示例
- 社保代缴公司服务费包含哪些
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- ts泛型使用举例
- 私有化轻量级持续集成部署方案--03-部署web服务(下)