84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
百度试了几个方案,不知道是不是微信最近封了还是啥的,不管用,有木有最近解决过这个问题的啊
学习是最好的投资!
我也在找相关的答案,找到心好累,好多都是不能用的,感觉自己基础还是太差了
纯前端不可能的,跨域图片请求一定会带上referer头,服务器通过这个来判断是否是盗链。用后端中转一下应该可以,但是除此之外微信好像也会有防盗链措施,之前我在公众号看漫画,没看完,锁屏,10分钟后刷新页面就提示我请在微信浏览器打开了。。。
referer
请在微信浏览器打开
前端不太清楚,后端有个方法比较可行,缺点是图片流量也会走自己的服务器。
header('Content-type: image/jpeg'); echo file_get_contents('http://www.qq.com/abc.jpg');
我说一种办法,不过你可能不会喜欢的……
所谓防盗链,就是不希望非自己的网站或页面去使用自己网站的资源。
一般做法是后端处理referer头,虽然并不完美但可以阻挡多数问题。
如果你要纯前端解决的话,那么首先在你自己的页面上也不能有src。
那么思路就很简单了,在前端打开页面时,自己往该有图片的地方画图片,canvas或者其他方式。而且这个方式还是会传图片真实地址的,所以你还要自己做加密处理。
100%纯前端的方法是不可能,因为你后端用url存着,外部就有办法看到这个url。
如果是最低劳力层本得解决显示问题,可以用前后端的方式 先用后端跳板
然后用前端的js代码
var imgs=$(".news-editor").find("img"); //显示图片的内容都在类为news-editor的层里面,这里用了jquery for (var i = 0; i < imgs.length; i++) { imgs[i].src = "跳板文件地址?url=" + imgs[i].src } //为每个img标签的src属性加上跳板文件的前缀。
这样只要加个跳板后端文件和在前端模板文件上加一段js代码 即可通用
我也在找相关的答案,找到心好累,好多都是不能用的,感觉自己基础还是太差了
纯前端不可能的,跨域图片请求一定会带上
referer
头,服务器通过这个来判断是否是盗链。用后端中转一下应该可以,但是除此之外微信好像也会有防盗链措施,之前我在公众号看漫画,没看完,锁屏,10分钟后刷新页面就提示我
请在微信浏览器打开
了。。。前端不太清楚,后端有个方法比较可行,缺点是图片流量也会走自己的服务器。
我说一种办法,不过你可能不会喜欢的……
所谓防盗链,就是不希望非自己的网站或页面去使用自己网站的资源。
一般做法是后端处理referer头,虽然并不完美但可以阻挡多数问题。
如果你要纯前端解决的话,那么首先在你自己的页面上也不能有src。
那么思路就很简单了,在前端打开页面时,自己往该有图片的地方画图片,canvas或者其他方式。而且这个方式还是会传图片真实地址的,所以你还要自己做加密处理。
100%纯前端的方法是不可能,因为你后端用url存着,外部就有办法看到这个url。
如果是最低劳力层本得解决显示问题,可以用前后端的方式 先用后端跳板
然后用前端的js代码
这样只要加个跳板后端文件和在前端模板文件上加一段js代码 即可通用