我自己在开发中,遇到几种在后端获取js用ajax传来的数据,
比如ajax中的data:{“xx”:值}
一般都是用 key = request.args.get("xx"),“xx”是ajax中传来的data中的键,通过这种形式获取它的值。
也可以先把整个data这个字典拿过去,再从这个字典拿它里面的一个个值
dict = request.valuse.to_dict()
key = dict.get ("xx")
还有一种形式我用的比较少,也只是仿照前面的人写的代码来用的,如下
在js中:var result = Array() 返回一个空的数组
result.push(arr[i].id) 这句话应该是添加一些id到result中,
data:{"xx":JSON.stringify(result)}
后端中:key_list = json.loads(request.form.get("del_list"))
for key in key_list:
需要遍历,所有我觉得获取到的应该是一个列表,遍历拿到列表一个个的值,我还发现一个问题,当ajax用的是get请求的时候我可以用前两种的方法,而当是post的请求,就获取到一个none,只用用这种方法才获取成功。
属性
|
意义
|
返回值
|
用法示例
|
form
|
post提交的表单数据
|
MultiDict(一键多值字典类型)
|
name = request.form.get('name') ---unicode格式
id=request.form.getlist(id)
|
args
|
获取get请求url中提交的参数
|
MultiDict(一键多值字典类型)
|
127.0.0.1:5000/user?id=1
id=request.args.get(id),多值可以用getlist
|
values
|
获取表单数据和url提交参数
|
CombinedMultiDict
(form和args)
|
id=request.values.get(id)
|
cookie
|
获取请求的cookie数据
|
Dict(字典)
|
resp = make_response("设置cookie")
resp.set_cookie('name','zzj',过期时间)-----设置cookie
name =request.cookies.get('name') ------获取cookie
|
files
|
获取请求上传的文件
|
*
|
image=request.files.get('pic') ----获取图片内容
image.save('保存的路径') -----保存图片
|
data
|
包含请求内容(json,xml等)
|
string(字符串)
|
str =request.data
|
如果我那些写错了或写的不好,欢迎大家评论补充下。