Python 在客户机和Flask之间传递数据
我有一个Flask应用程序,其中有一个表单收集一些用户输入。然后,通过对Python脚本中的函数的AJAX调用,将该输入作为JSON数据传递 这个函数调用一个API,获取一些新数据,然后返回一个重定向URL到AJAX调用。成功后,AJAX会使用window.location.href重定向到此新模板 我尝试将第一个视图函数(_search)传递给第二个视图函数,然后呈现适当的模板,但不幸的是,这没有起到作用。我还尝试将数据设置为会话变量,然后在模板中访问它,但这似乎也不起作用 我的问题 如何访问重定向模板results.html中的变量“response” AJAX脚本Python 在客户机和Flask之间传递数据,python,ajax,flask,Python,Ajax,Flask,我有一个Flask应用程序,其中有一个表单收集一些用户输入。然后,通过对Python脚本中的函数的AJAX调用,将该输入作为JSON数据传递 这个函数调用一个API,获取一些新数据,然后返回一个重定向URL到AJAX调用。成功后,AJAX会使用window.location.href重定向到此新模板 我尝试将第一个视图函数(_search)传递给第二个视图函数,然后呈现适当的模板,但不幸的是,这没有起到作用。我还尝试将数据设置为会话变量,然后在模板中访问它,但这似乎也不起作用 我的问题 如何访问
...
$.ajax({
type: 'POST',
url: '/the_search',
data: JSON.stringify(data),
contentType: "application/json; charset=utf-8",
success: function(data, status) {
window.location.href = data['website'];
},
error: function() {
console.log('there was an error');
}
})
...
Python脚本
@app.route('/the_search', methods=("POST", 'GET'))
def the_search():
data = json.loads(request.data)
lat = data['latitude']
longitude = data['longitude']
response = unirest.get("https://zilyo.p.mashape.com/search?latitude={}&longitude={}".format(lat, longitude),
headers={
"X-Mashape-Key": "k6HBYxvy88mshQ6Yg1xPVuv7Vg9Np1GZj7IjsnPxploykdpaHA",
"Accept": "application/json"})
session['search_results'] = response.body
return jsonify({'website': '/results'}), 200
@app.route('/results', methods=('POST', 'GET'))
def results():
#How can I pass the_search view function to here while still having access to the response data
print session['search_results']
return render_template('results.html')