jFinal 获取formdata数据为null的问题
一个相当奇葩的问题,我用jFinal获取前端传过来的formdata数据,非文件。我用ajax试了,axios试了,fetch试了,都不行。
其它还有修改idea或eclipse的配置都不管用。
然后偶然在jfinal官网看到有人也出现了相同的问题,其中一个回答:
要先getFiles()后,才能同时获取其它参数。因为这个参数结构是:
{
title:'sdfsdf',
description:'233',
file:file
}
然后我才发现了这个奇葩的解决方案,忍不住想吐槽的是
这个参数注入@Para的意义到底是什么???
public void login(@Para("username") String username, @Para("password") String password){
//WDNM非要写这一句才能获取到数据,浪费老子好多个小时。
UploadFile f = getFile();
if(username == null){
username = get("username");
}
if(password == null){
password = get("password");
}
前端代码:
var formdata = new FormData();
var data = $.common.formToJSON('frmLogin');
formdata.append('username',data.username.toString());
formdata.append('password',data.password.toString());
$.ajax({
url: 'login',
type: 'post',
processData:false,
contentType:false,
data:formdata,
dataType: 'json',
mimeType: "multipart/form-data",
// headers: {
// 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
// },
success: function(res) {
console.log(res);
}
});