环境 JF3.3 vue+axios表单提交
<form @submit.prevent="submit($event)">
submit: function(event){
var formData = new FormData(event.target);
console.info(formData);
axios.post('cart/addAdsReturnJsonObj',formData)
.then(function (res) {
console.info(res.data);
})
.catch(function (error) {
console.log(error);
});
}
JF后台取不到值,查看原因
Content-Type: multipart/form-data
JFinal取这个要先getFile一下,但是我这表单中没有文件需要上传,都是普通文本。结果getFile哪里报错
解决办法:
HttpKit.readData(getRequest()),得到String 再依赖common包做解析。(本人不喜欢引入太多jar包)
第二种办法
axios.post('cart/addAdsReturnJsonObj',{name:'123',mobile:'123'})
Content-Type 为application/json
String data = HttpKit.readData(getRequest());
Test t = FastJson.getJson().parse(data, Test.class);
System.out.println(t.getName());
阿里的json包项目中已有。无需重新导入,但是需新建class
第三种办法(推荐,适合表单项较少)
axios.post('cart/addAdsReturnJsonObj','name=hehe&mobile=10')
手动拼接
Content-Type application/x-www-form-urlencoded
JFinal可通过getPara获取