flask 接口 测试:
案列:
from flask import Flask
from flask import request
import json
app = Flask(__name__)
@app.route('/',methods=['GET'])
def hello_world():
return 'hello world'
# 设置访问URL:'/plus',methods:允许哪种方式访问
@app.route('/plus',methods=['POST'])
def plus():
data = json.loads(request.data.decode())
x = data['x']
y = data['y']
return json.dumps(x+y)
if __name__ == '__main__':
# 设置host,端口8080。threaded=True 代表开启多线程
app.run(host='0.0.0.0', port=8080, threaded=True)
Flask 通过 @app.route 装饰器来配置路由和请求方式,request.data 接收 post 请求参数,因为接收到的是字节流,需要 decode() 解码再转成 json 格式。
Flask 可以设置 run() 参数开启 多线程(threaded=True) 和 多进程(processes=4),但如果要上生产环境,还是得用 Nginx 或 Apache 部署,提高性能。
测试脚本:
import requests
url = 'http://127.0.0.1:8080/plus'
h = requests.post(url=url,json={"x":2,"y":3})
print(h.text)