此圖片來自微信公眾平台未經允許不可引用 解決方法


微信公會號內的圖片,你引用后會出現:

這時我們可以做一點簡單處理

第一種

原圖片鏈接

https://mmbiz.qpic.cn/mmbiz/gJX7diatPruv1nUuCDiae8on4UdONka51EpPdQhUoFZ9zkZtzVLJia5hqYbibRdlKicsdxmNyBcQkFb8VyqGWqSHucQ/640?tp=webp&wxfrom=5&wx_lazy=1
tp=webp 改成 wx_fmt=jpeg
https://mmbiz.qpic.cn/mmbiz/gJX7diatPruv1nUuCDiae8on4UdONka51EpPdQhUoFZ9zkZtzVLJia5hqYbibRdlKicsdxmNyBcQkFb8VyqGWqSHucQ/640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

試下,有的就成功,但是有的就不成功。

換一種思路,我們將 img 標簽 改為 iframe 內套 img標簽

上代碼

/**
 * 解決引入微信圖片問題
 * 引用微信公眾號內圖片會出現非法圖片或未授權
 * 將圖片轉換為 iframe 在做處理
 * @author lmaster
 * @email 407987823@qq.com
 * @jquery 1.12.4
 */
$(function() {
    window.WxImgTemp = '';
    var article = '.article'; //定位,其下所以的img都會做處理
    var showWxImg = function(jQele) { //jQele 為 jquery 對象
        var url = jQele.attr('src'),
            time = new Date().getTime(),
            frameid = 'wxImg_' + time;
        window.WxImgTemp = '<img id="img" style="width:100%" src=\'' + url + '?' + time + '\' />\
                <script>window.onload = function() {\
                parent.document.getElementById(\'' + frameid + '\').height = document.getElementById(\'img\').height+\'px\'; \
                }</script>';
        var iframe = '<iframe id="' + frameid + '" \
                              src="javascript:parent.WxImgTemp;" \
                              frameBorder="0" scrolling="no" width="100%"></iframe>';
        jQele.after(iframe).remove()
    };
    $(article + ' img').each(function(index, element) {
        showWxImg($(this))
    })
    window.WxImgTemp = '';
})

 

測試ok


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM