img 的“图片另存为”在 js 中有没有对应的事件?

2021-12-01 09:10:24 +08:00
 kisshere
或者换句话说,js 怎样实现检测一张图片被用户保存到本地了?
2807 次点击
所在节点    程序员
21 条回复
yaphets666
2021-12-01 09:15:36 +08:00
曲线救国,禁止鼠标右键默认行为,自己实现一个右键弹框。
yigecaiji
2021-12-01 09:17:23 +08:00
需求是?
xjngbla
2021-12-01 09:18:33 +08:00
纯浏览器的 JavaScript 是不能够获得有关用户的文件系统信息。默认下载路径还可能包含敏感信息,这是有风险的
楼上的主意是行的
liuidetmks
2021-12-01 09:20:36 +08:00
1 楼说的可以,差不多得了
防不住的。
类似问题 https://v2ex.com/t/806677
tatu
2021-12-01 09:21:30 +08:00
用你头像试了下:element.style {
pointer-events: none;
},好像可行。
rsyjjsn
2021-12-01 09:22:48 +08:00
渲染的时候给图片加个 query ,一旦用户保存图片就是重新请求 url 并携带 query ,后端捕获到这个 query 就算用户下载了
cando
2021-12-01 09:23:58 +08:00
截图保存
拍视频保存
无解了
cmdOptionKana
2021-12-01 09:25:51 +08:00
听起来就是防小白,禁用鼠标右键就行了。但是防小白没啥意义吧,一般小白下载只是收藏自用而已,而专业盗图的人你也不可能简单防住。
KuroNekoFan
2021-12-01 09:56:07 +08:00
还是 robots.txt 吧
另 5 楼的应该是最简单的
zhaol
2021-12-01 10:05:32 +08:00
建议跟产品好好沟通,防君子不防小人的需求,没有意义。
2i2Re2PLMaDnghL
2021-12-01 10:12:25 +08:00
主流浏览器基本上都避免了这样的漏洞。
dengshen
2021-12-01 10:13:22 +08:00
鼠标手势按住图片往下一拖就下载了。插件的权限比网页高
iqoo
2021-12-01 11:54:28 +08:00
用 Service Worker 虚拟路径,大部分浏览器都无法正常保存。
villivateur
2021-12-01 12:02:09 +08:00
在网页里实现一个操作系统,然后在这个操作系统里做渲染,感觉就可以防止大部分了
gesse
2021-12-01 12:26:06 +08:00
你是不是色图不想让人保存?🐶
wunonglin
2021-12-01 12:45:22 +08:00
1 、需求是什么?
2 、有何意义?
hibian
2021-12-01 13:07:03 +08:00
debug 反 debug 反反 debug 没用的,资源已经下到客户端了.
IvanLi127
2021-12-01 18:43:14 +08:00
自定义个上下文菜单替代浏览器的,然后就可以了
xfriday
2021-12-01 20:06:29 +08:00
加水印吧,其他的都没啥用
puzzle9
2021-12-02 10:41:26 +08:00
图片采用后台渲染 立刻过期
如果多次请求的话 就是保存本地

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/819195

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX