Jfinal 获取参数取不到

我用的JFinal 4.9.03, 前台无论是采用表单的形式 还是 json 格式后台得到的参数都是null, 必须先gefile 先调用一下 才能取 参数?  怎么解决

评论区

doubuxingle

2024-06-19 17:10

当同时传文件时,是需要先getFile()之后才能再get取其他参数。你是不是传了文件?

杜福忠

2024-06-19 22:38

https://jfinal.com/doc/3-11
特别注意:如果客户端请求为multipart request(form表单使用了enctype="multipart/form-data"),那么必须先调用getFile系列方法才能使getPara系列方法正常工作,因为multipart request需要通过getFile系列方法解析请求体中的数据,包括参数。同样的道理在Interceptor、Validator中也需要先调用getFile。

如果不是文件上传业务,可以让前端改一下contentType参数。json 为application/json ,也看前端使用的什么框架,Ajax 还是axios之类的配置方式还不太一样。

如果还不能解决,可以再补一些前后端交互的代码。

zz210891470

2024-06-20 09:05

@杜福忠 我用 application/json 传过 也是不行的 也必须先调用gefile 我记得老版本就不会有这个问题 最近换高点的jfinal jar包就这样了

杜福忠

2024-06-20 09:41

@zz210891470 官方没有哪个版本json参数需要MultipartRequest去解析的,所以大概率是前端有什么梗,可以用浏览器的开发者模式 查看网络模块里面的请求 http 参数是怎么组装的

zz210891470

2024-06-21 10:24

@杜福忠 没有的 因为是用apipost 工具测试的

热门反馈

扫码入社