我的前端从后端获取图片相对路径的时候出了些问题。前端写了个 jsp 。定时向后端发送更新请求,然后后端把相应的图片的相对路径发送给前端,因为后端写了个监听器监听并保存发来的图片。后面发现前端加载到 tomcat 里后貌似跟后端的路径就不一样了,前端是 localhost:8080/projectName/...这种,而后端是保存项目的本地文件地址 D:\这种。而 chrome 又不能够(能设置但需求上不许)通过绝对路径访问图片,所以我后端发送给前端的路径没法访问到。这种问题应该如何解决啊。

我的前端从后端获取图片相对路径的时候出了些问题。前端写了个 jsp 。定时向后端发送更新请求,然后后端把相应的图片的相对路径发送给前端,因为后端写了个监听器监听并保存发来的图片。后面发现前端加载到 tomcat 里后貌似跟后端的路径就不一样了,前端是 localhost:8080/projectName/...这种,而后端是保存项目的本地文件地址 D:\这种。而 chrome 又不能够(能设置但需求上不许)通过绝对路径访问图片,所以我后端发送给前端的路径没法访问到。这种问题应该如何解决啊。
1 Kinnice Apr 11, 2022 1. 后端 把 D:/aaaa/bbbbb/uploads/d.jpg 的 D:/aaaa/bbbbb 去掉,只传 uploads/d.jpg 2. 设置 web 服务器可以访问 uploads/目录,即 http://localhost:8080/uploads => D:/aaaa/bbbbb/uploads |
2 Kinnice Apr 11, 2022 传全路径是安全大忌 |
3 clf Apr 11, 2022 我建议后端弄个文件表,每个文件生成一个 token ,前端用接口调 token 拿。 |
4 C02TobNClov1Dz56 Apr 11, 2022 静态资源交给 nginx 得了 |
5 siweipancc Apr 11, 2022 via iPhone 建议上 cdn 授权方案,全路径迟早寄 |
6 chendy Apr 11, 2022 通过绝对路径和相对路径都有风险 建议通过 nginx 访问静态文件 |
7 rabbbit Apr 11, 2022 后端存相对路径,传相对路径。例如:a.jpg 后端出接口 or 配 Nginx(取决于是否需要鉴权), 通过统一的 api 获取文件。例如 example.com/img/a.jpg 怀念上家,获取图片的时候后端就自动帮我拼好了,都不用我拼路径前缀。 |