gpt4 book ai didi

java - Spring - 在 Web 请求完成并触发 RequestMapping 之前执行

转载 作者:行者123 更新时间:2023-11-30 06:32:49 25 4
gpt4 key购买 nike

我正在寻找一种在 RequestMapping 调用之前执行某些操作的方法。为了更具描述性,我有一个用于文件上传的 Controller ,例如:

@Controller
@RequestMapping("/ul")
public class UploadController
{

@RequestMapping(value = "/{ticket}", method = RequestMethod.POST)
public String ul(ModelMap model, HttpServletResponse response, @PathVariable("ticket") String ticket)
{
...

到目前为止一切正常。我现在的问题是,我使用上传票证来验证用户是否可以上传文件,并且这些票证的生命周期有限,当用户上传一个非常大的文件或连接不良时,这将需要几分钟,票证很可能会无效并且上传被丢弃。

有什么方法可以实现在建立连接时收到通知吗?就像调用 URL 时一样,我可以直接验证票证,甚至可以关闭连接?

我已经尝试过拦截器、抽象 Controller 、带有进度监听器的公共(public)多部分解析器,但所有这些都已经太晚了,并且当操作(文件传输)完成时事件就会被触发。

最佳答案

你可以使用过滤器或执行器来达到这个目的,过滤器来自servlet容器,可以用来操作请求,执行器来自spring-mvc框架,有几个执行器

which gives us a cutaway points at different phases

关于java - Spring - 在 Web 请求完成并触发 RequestMapping 之前执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45739086/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com