网站建设报价多少,WordPress 延时加载,wordpress文章中标签,重庆建设工程证照查询网站问题描述
在做项目时#xff0c;需要把前端的数组通过axios的get请求发送到后端处理#xff0c;于是像这样直接发送#xff1a; axios.get(url,{params:{arr: update_arr}})这时在后端接收后报错说#xff1a;没有 ‘arr’ 这个key#xff1a;
arr request.GET[arr]
pr…问题描述
在做项目时需要把前端的数组通过axios的get请求发送到后端处理于是像这样直接发送 axios.get(url,{params:{arr: update_arr}})这时在后端接收后报错说没有 ‘arr’ 这个key
arr request.GET[arr]
print(arr) # 报错显示 没有 ‘arr’ 这个key那就先不指定key直接GET发现request请求中把‘arr’变成了‘arr[]’
arr request.GET
print(arr)
# 输出QueryDict: {arr[]: [{day:2023-03-14,type:0}, {day:2023-03-15,type:0}]}那我们就用’arr[]’ 这个key去取数据,但是输出的是传过去数组的最后一个元素
arr request.GET[arr[]]
print(arr)
# 输出{day:2023-03-15,type:0}所以axios的get请求并不能像这样直接传数组那该怎么办呢 解决办法
在网上查阅大量资料普遍的是提供了两种方法 1、自己编写数组序列化器 2、使用qs插件 详情可参考 https://blog.csdn.net/weixin_62277266/article/details/124158958 https://www.cnblogs.com/kingreatwill/p/12641238.html#/cnblog/works/article/12641238 但本人对js代码不是很熟悉同样也不想装额外装插件所以就自动跳过了这两种普遍方法采取一种曲线救国的方法。
将数组转换成字符串传送 axios.get(url,{params:{arr: JSON.stringify(update_arr)}})这样我们在后端只需稍微处理一下我们就可以在后端拿到我们想要的数组了 from ast import literal_eval...arr request.GET[arr]print(literal_eval(arr))# 输出 [{day: 2023-03-14, type: 0}, {day: 2023-03-15, type: 0}]