我正在为Grails应用程序使用自定义SpringSecurityFilter,我正在尝试使用commons上载库来处理请求。我能够在过滤器中处理请求,但一旦它到达我的控制器,没有任何值可用。
HttpRequest只能由上传库处理一次吗?我猜它正在清理临时文件。有没有办法保留它们,以便可以在控制器级别再次处理它们?
我需要查询安全性的表单参数(由于客户端我无法将其添加到http标头中)但是一旦我得到该值,它似乎会擦除请求以进行进一步处理。
答案 0 :(得分:5)
是。请求只能解析一次。
我在Apache的FAQ页面上看到了FileUpload的答案。
问题:为什么parseRequest()不返回任何项?
答案:“这种情况最常发生在请求已被解析或以其他方式处理时。由于输入流已经被前一个进程占用,因此Commons不再可以解析它文件上传“。