直接上图吧,Vue发送DataForm,后台收不到

传参,后台get不到model不到,bean不到,前台发送的网络请求也没毛病,一开始Vue用json,后台解析不了,然后换成dataform的,大神帮忙看下(json后台反序列化,功能已实现,但是就是纳闷dataform哪里出错了)111.png2222.png3333.png

评论区

JFinal

2019-06-27 20:54

控制台输出的 jfinal action reporter 这一栏,没有出现 Parameter 这一栏,证明参数没传对,去前端找原因,直到后端出现 Parameter 这一栏

要输就输给追求

2019-06-27 21:30

getRawData();

杜福忠

2019-06-27 22:06

Vue.js推荐使用 axios 来完成 ajax 请求 , 默认提交的请求头是Content-Type: application/json 所以需要设置一下:
import axios from 'axios';
import qs from 'qs';
var data = {name: 'James'};
var url = '';
axios.post(url, qs.stringify(data), {headers: {'Content-Type': 'application/x-www-form-urlencoded'}}
).then(result => {
//回调操作
})
https://www.runoob.com/vue2/vuejs-ajax.html

MR.zhangzhiwei

2019-06-28 09:51

@杜福忠 大佬,我用的浏览器方法,如果是文件格式,比如图片,我该怎么添加进去呢,const params = new URLSearchParams();,其他字段直接append可以添加进去,图片是不是就不可以添加到params了?

MR.zhangzhiwei

2019-06-28 09:52

@要输就输给追求 你说的那个是json处理方法,我想用getPara来获得

MR.zhangzhiwei

2019-06-28 10:14

@杜福忠 大佬,就是如果带有文件的话,就不可以用application/x-www-form-urlencoded这种传输了,应该用data/form吗,那样我改为dataform的话,后台getPara又接收不到参数了,一个请求不可以同时使用两种Type吧,那样既要接收参数又要接收文件,Vue有好的办法吗

MR.zhangzhiwei

2019-06-28 10:16

@杜福忠 Method : add
Parameter : author=5555 creatime=undefined pic=C:\fakepath\321334324.jpg title=5555 type=55555 content=55555 后台只可以收到上传图片的绝对路径,Jfinal有没有根据本地绝对路径下载的方法

杜福忠

2019-06-28 11:13

@MR.zhangzhiwei 文件记得是单独上传的, 分开提交. 我没直接传服务器, 都是传第三方OSS上的, 你查前端资料的时候, 不要加JFinal 关键字, 比如: VUE 文件上传

MR.zhangzhiwei

2019-06-28 12:06

@杜福忠 多谢大佬,解决了

热门反馈

扫码入社