当我运行我的应用程序时,我遇到了这个问题,即用户上载文件(音频文件),然后重定向到另一个可以播放文件的页面。但是,没有立即找到该文件。我在检索该mp3文件时收到404错误消息。仅当我重新启动该应用程序并上传相同的文件时,它才会播放。这对npt毫无帮助。换句话说:我让文件上传到的静态文件夹没有更新。
我可以通过下一个视频演示我的意思:https://youtu.be/UJvtZTsRGNY
因此,我存储音频文件上载的方式如下:我使用H2内存数据库,其中有一列称为:audioFile(path)。这仅将文件的位置存储为字符串,因此以后可以在(th:)src标记中使用它。我将文件存储在项目结构中。 (我也尝试过将上传的内容存储到我的桌面上,但是仍然出现相同的问题,所以我切换回了)
因此,当我使用测试用户上传文件时,有时会播放相同的上传内容,反之亦然
我还尝试过使用spring.servlet.multipart。最大请求大小,但没有结果。
而且我的控制台也没有显示任何问题,并且当我查看mp3文件的源时,我发现它试图从中请求的路径是正确的。
由于我不知道代码在哪里出了错,我在这里是指向github页面的链接:https://github.com/1eam/Eindproject以及指向YouTube的表明我的问题的链接:https://youtu.be/UJvtZTsRGNY
*我刚刚在点击屏幕记录时注意到,当我重新启动应用程序时,音频文件仅在播放(获取源)。因此,这就是为什么我认为播放音频有时起作用的原因
我通过设置intelliJ的运行配置来部分解决了这一问题:更新策略,以更新资源和类。现在,我不必重新启动整个应用程序即可播放请求的音频文件(或任何静态文件)。
唯一的例外是,我现在必须在intelliJ内单击,然后刷新浏览器以实现此目的。
[当用户将文件上传到目录时,必须有一种方法可以从intelliJ触发“更新类和资源”功能。
欢迎改进的答案,与此同时,我仍在寻找最佳解决方案,因为我必须使它起作用。