前两天参加阿里云7天培训,用python+Flask写了一个基于阿里云视觉AI平台的识别身份证、驾驶证以及车牌自动生成汽车保险单(这么一个小玩意,搞了我一晚上,头疼,到最后还是个半成品)
通过上传身份证、驾驶证以及车牌,调用阿里云的API,去识别图片里信息,将返回的信息回填到一个汽车保险单上。
那么怎么在不同的路由之间去传递参数呢?
我想到是设置的全局变量去解决这个问题,上代码
FrontResult={}#定义的全局变量字典
@app.route('/add',methods=['POST','GET'])
def add():
# 简单的过滤掉无效post请求
print(request.form)
# return render_template('submit-index.html')
if request.form['id'] =='bei':
card_id=request.form['q']
# dr_id=request.form['a']
# car_id=request.form['s']
global FrontResult
FrontResult=deal_id(card_id)
print(FrontResult)
#deal_carid(dr_id)
# deal_carid(car_id)
else:
pass
# FrontResult={'Address': '河北省邯郸市肥乡县肥乡镇', 'Gender': '男', 'Nationality': '汉', 'Name': '常涛', 'IDNumber': '411526199706013217', 'BirthDate': '19970601'}
return render_template('submit-index.html')
@app.route('/new_index', methods=['POST', 'GET'])
def new_index():
global FrontResult
print(FrontResult)
# def enablePrint():
# sys.stdout = sys.__stdout__
# enablePrint()
return render_template('new_index.html',**FrontResult)
成功解决不同路由之间参数的传递问题