百度试了几个方案,不知道是不是微信最近封了还是啥的,不管用,有木有最近解决过这个问题的啊
纯前端不可能的,跨域图片请求一定会带上referer
头,服务器通过这个来判断是否是盗链。
用后端中转一下应该可以,但是除此之外微信好像也会有防盗链措施,之前我在公众号看漫画,没看完,锁屏,10分钟后刷新页面就提示我请在微信浏览器打开
了。。。
前端不太清楚,后端有个方法比较可行,缺点是图片流量也会走自己的服务器。
header('Content-type: image/jpeg');
echo file_get_contents('http://www.qq.com/abc.jpg');
我说一种办法,不过你可能不会喜欢的……
所谓防盗链,就是不希望非自己的网站或页面去使用自己网站的资源。
一般做法是后端处理referer头,虽然并不完美但可以阻挡多数问题。
如果你要纯前端解决的话,那么首先在你自己的页面上也不能有src。
那么思路就很简单了,在前端打开页面时,自己往该有图片的地方画图片,canvas或者其他方式。而且这个方式还是会传图片真实地址的,所以你还要自己做加密处理。
100%纯前端的方法是不可能,因为你后端用url存着,外部就有办法看到这个url。
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
6 回答1.1k 阅读
我也在找相关的答案,找到心好累,好多都是不能用的,感觉自己基础还是太差了