关于实现图片服务器搭建的问题 40C

我要作一个图片服务器,spring boot(集成SSM)+dubbo+nginx搭建的
之前没考虑图片用户权限的问题,
比如A用户的图片只能A用户登陆后才能查看,即使B用户登陆后获取到了A用户的图片链接,B用户是看不了的。


没考虑权限之前:
我是把通过nginx直接访问图片的,


但是现在需要权限控制了,nginx那边我肯定是不能通过nginx编程来控制自己平台的用户权限吧(因为我不会nginx的扩展编程)


于是我把图片的读取改成通过java后台的HttpServletResponse来输出文件流到前端,因为这样我就可以很方便的去控制用户权限了。
接口的请求头带了 用户登陆生成的token


但是我认为通过 HttpServletResponse来输出文件流,似乎不完美,我就是感觉java来读取文件流再输出给客户端有点怪怪的(做了后台集群)。
各位有什么好的办法呢??急急急

4个回答

HttpServletResponse就很好,因为你这个只是一个token验证,没有别的逻辑,如果你觉得性能有问题,可以直接用CGI

通过接口进行中转下载,接口里带上token,进行鉴权

弄一个拦截器, 用户获取图片是先判断图片是不是属于自己, 是就放行, 不是就查看图片的用户是否登录, 你看看这个思路行吗

你写的其实也没啥问题,通过流读取到客户端合适着呢,但是如果你在加个后缀名的验证估计就不别扭了,比如:访问地址,jpg,然后你加个验证,如果不是jpg结尾的,不返回流,提示地址错误。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问