您的位置:首页 > 移动开发 > 微信开发

此图片来自微信公众平台未经允许不可引用

2016-12-23 17:10 423 查看
2016年4月6号开始,weixin.sogou.com获取图片应该是加上了Referer验证,上面用的方法失效了,出现下面的情况:此图片来自微信公众平台 未经允许不可引用 但是我找到一个和读微信网站相同的网站,传送门,这个网站能通过js设置能在网站上显示图片,我把相同的脚步用到读微信网站上就不行,不知道是什么原因传送门网址可以用的代码如下:function changeData(data, tag){
    for(var i = 0; i < data.length; i++){
        if(!data[i].hasAttribute("data-src") && data[i].hasAttribute("src") && (data[i].getAttribute("src")).lastIndexOf('http://', 0) === 0 && (data[i].getAttribute("src")).indexOf('chuansong.me/') == -1){
            data[i].setAttribute("data-src", data[i].getAttribute("src"));
        }
        if(data[i].hasAttribute("data-src")){
            datasrc = data[i].getAttribute("data-src");
            datasrc = datasrc.replace("https://v.qq.com/", 'http://v.qq.com/');
            if(datasrc.indexOf("http://mmbiz.qpic.cn")!=-1){
            data[i].setAttribute("src", (tag == 'image' && datasrc.indexOf('http://read.html5.qq.com/image') == -1) ? "http://read.html5.qq.com/image?src=forum&q=5&r=0&imgflag=7&imageUrl=" + datasrc : datasrc);
                 data[i].removeAttribute("data-src");
            }
        }   
    }   
}
var imgs = document.getElementsByTagName('img');
var videos = document.getElementsByClassName('video_iframe');
changeData(imgs, 'image');
changeData(videos, 'video');

原文:https://segmentfault.com/q/1010000004896098
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: