保护图像下载

新手上路,请多包涵

我知道保护图片下载的最好方法就是一开始就不要把它放在互联网上。

我假设没有 100% 的防止图像下载的保护,并且如果用户可以在互联网上看到图像,他可以凭借一些经验找到下载它的权限。

我知道透明 .gif.png 覆盖图像或使用 background_image CSS 右键单击属性来保护它并防止

其他使图像下载复杂化从而阻止大多数用户下载图像的方法?

这是开始的简单代码:

 <img src="http://placekitten.com/600/450">

原文由 web-tiki 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 425
2 个回答

不,实际上没有办法阻止用户执行特定任务。但你总是可以采取措施!图像共享网站有一个庞大的开发团队日以继夜地工作,以创建这样一种算法,可以防止用户保存图像文件。

第一种方式

尝试这个:

 $('img').mousedown(function (e) {
  if(e.button == 2) { // right click
    return false; // do nothing!
  }
});

因此,用户将无法单击菜单中的“图像另存为…”选项,因此他也没有机会保存图像。

第二种方式

其他方法是使用 background-image 。这样,用户将无法右键单击并将图像另存为…但他仍然可以在检查器中看到资源。

第三种方式

即使我是这个的新手,几天前我在浏览 Flickr 时尝试右键单击,它也没有让我做任何事情。这反过来又是我为您提供的第一种方法。然后我试图去见检查员,在那里我一无所获。为什么?因为他们使用 background-image 并且同时他们使用 data:imagesource 作为它的位置。

这对我来说也很棒。您可以轻松地阻止用户以这种方式保存图像文件。

它被称为数据 URI 方案: http ://en.wikipedia.org/wiki/Data_URI_scheme

笔记

请记住兄弟,当你让用户浏览你的网站时,你在服务器端授予他读取权限,这样他就可以毫无问题地读取所有文件。图像文件的问题也是如此。他可以读取图像文件,然后可以轻松保存它们。当他浏览您的网站时,他会首先下载图片。所以他将它们保存在他的磁盘上不是问题。

原文由 Afzaal Ahmad Zeeshan 发布,翻译遵循 CC BY-SA 4.0 许可协议

另一种删除“保存图像”上下文菜单的方法是使用一些 CSS。这也使上下文菜单的其余部分保持不变。

 img {
    pointer-events: none;
}

它使所有 img 元素对任何鼠标事件(例如拖动、悬停、单击等)都没有反应。

有关详细信息,请参阅 规范

原文由 CampSafari 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题