pythonget请求传list_pythonflask框架实现传数据到js的⽅法分
析
本⽂实例讲述了python flask框架实现传数据到js的⽅法。分享给⼤家供⼤家参考,具体如下:
stroking是什么意思⾸先要清楚后台和前端交互所采⽤的数据格式。
分页⼀般选JSON,因为和js完美贴合。
后台返回的数据进⾏序列化
在/homepageRecommend路由的 view⽅法中返回序列化数据
dict = {"a":1, "b":2}
import json
json.dumps(dict)
2)
from flask import jsonify
jsonify(dict) #在调⽤jsonfiy 有时会报错,原因是jsonify 对象必须是dict
这两种序列化⽅式主要的区别是 jsonify 格式更美观⼀些
在前端利⽤jquary 对json进⾏反序列化
$.getJSON('/homepageRecommend'
, function(data) { // 从Flask返回的数据
alert(data.a) // 浏览器弹窗显⽰ 后端返回的dict["a"]的值,此次是1
}
)
//getJSON 函数有三个参数
//第⼀个是后端返回的数据的urlpython请求并解析json数据
/
/第⼆个是要返回给服务器的data 是可选的
//第三个是对获取的反序列化数据 要继续进⾏的操作的函数
vba listbox前端通过.get()或者.get()或者.post()⽅法发送请求,后端利⽤json.dumps(dict)返回json数据,在js中利⽤eval()⽅法,把json数据转换为js对象,后再做其他处理
$.post("{{ url_for('statistics.HomeRecommend') }}",{"id":a},function(reco_list){
descendedvar reco_list = eval(reco_list)
//do others
})
最近在使⽤icharts画图的 过程中发现了另外⼀种传数据的⽅式,view中使⽤
return render_template('statistics/numberofuserlogin/login_number.html', result_json = json.dumps(result))
js中直接⽤ js_object = eval('{{result_json|safe }}') 注意 ⼀定要加|safe 过滤否则会对字符串进⾏转义导
redis高并发解决方案致解析错误 使⽤这种⽅式传数据,能够在渲染模板的同时传数据,避免定义新的url拿数据
总结: flask 后台给前端js传数据, 需要注意序列化 和反序列化希望本⽂所述对⼤家基于Flask框架的Python程序设计有所帮助。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论