作为一个 Java 程序猿,写代码久了,各种技术也就都尝试了一个遍。先从 SSH1(Spring、Struts1、Hibernate)摸爬滚打转变到 SSH2(Spring、Struts2、Hibernate),谁成想 Struts 漏洞频出,于是 S2 的江湖地位很快被 SpringMVC 占领,随着时间的推移,未成想 MyBatis 也逐渐取代了 H 的江湖地位,于是 SSH2 就变成了现在依旧有项目在用SSM(Spring、SpringMVC、MyBatis),而今眼目下几乎被 Spring 全家桶包圆了。
我们都知道无论是 SSH 也好、还是 SSM 也罢,搭建时都会依赖一堆的 JAR 包和一坨坨的代码,而今天一次无心的 flask 尝试,感觉提供一个 WEB 服务真的好简单。
啥也不说,先上代码,去除空行,真的只有 7 行代码!!!
from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world(): return 'flask 真好!'if __name__ == '__main__': app.run()
跑起来,看一看是不是那么回事儿。
浏览器访问一下,再探探虚实,果不其然还真能够访问。
1. Flask 是啥?
简单了解,吹吹牛逼。Flask 其实是一个使用 Python 编写的可定制的轻量级 Web 应用微框架,特点就是灵活、轻便、容易上手。
2. 小插曲凑起来,如何发送 JSON 请求?
工作中用过很多模拟发包的工具,用过自己开发的 Jar 包模拟发包,用过浏览器插件模拟发包,但是用的最舒服的莫过于 postman 啦,不妨花半分钟时间一起体验体验。
首先根据下载链接完成安装。
https://www.getpostman.com/downloads/
然后打开页面配置请求头,在Headers中添加key为Content-Type,value 为 application/json的键值对。
然后在请求体 Body 中撸入要发送的 JSON 报文,点击 Send 就 OK!
Postman 半分钟就掌握了,点击 send,我们接下来还是回归主题,继续摸索 Flask。
3. 如何获取 JSON 请求?
Flask提供了好几种方式获取请求参数,先尝试用 request.get_json() 获取试试。
from flask import Flaskfrom flask import requestapp = Flask(__name__)@app.route('/', methods=['post'])def hello_world(): # 方式一 接受JSON请求参数 predict_data = request.get_json() app.logger.debug('request data %s', predict_data) contract_id = predict_data['contract_id'] app.logger.debug("contract_id %s