首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Get Google Chrome
Vimium · 在 Chrome 里使用 vim 快捷键
Coding
V2EX  ›  Chrome

你们是如何解决防盗链图片无法显示的?

  •  
  •   letitbesqzr · 144 天前 · 655 次点击
    这是一个创建于 144 天前的主题,其中的信息可能已经有所发展或是发生改变。

    问题

    现在新浪图床也开启防盗链了,各种网站上越来越多的图片显示不出来了,想依靠插件来解决问题,恢复正常浏览

    自己尝试的方案

    chrome 插件

    利用插件 Smart Header 可以配置自动规则,请求 url 中包含 sinaimg.cn 的时候,删除头中的referer,或者自定义,规则可以很灵活的自定义。

    png

    但是问题在于,该插件使用了 chrome 的webRequest api , WebRequest 文档中写到在 chrome 72 以后,需要在opt_extraInfoSpec 指定 extraHeaders 才能够修改Accept-LanguageAccept-EncodingRefererCookie 这些头了,该插件作者也没更新了。

    Starting from Chrome 72, the following request headers are not provided and cannot be modified or removed without specifying 'extraHeaders' in opt_extraInfoSpec:

    • Accept-Language
    • Accept-Encoding
    • Referer
    • Cookie

    利用 Tampermonkey 脚本

    也见到有其他 chrome 插件,可以把所有的referer信息都给删了,但是有些网站会判断该头信息,比如dnspod 登陆梅林路由器登陆 , 直接删除会导致这些网站无法正常使用。防盗链对我造成最大的影响就是在inoreader中各种图片显示不出来,在网上看到一段这样的脚本

    var meta = document.createElement('meta');
    meta.name = "referrer";
    meta.content = "no-referrer";
    document.getElementsByTagName('head')[0].appendChild(meta);
    

    生效域在http*://*.inoreader.com/* , 在 meta 中插入 no-referrer 的信息,即可正常的浏览。

    其他

    各位 v 友有没有其他的解决方法?

    3 回复  |  直到 2019-07-22 09:28:49 +08:00
        1
    delectate   144 天前   ♥ 1
    浏览器插件:refControl

    或者油猴在页面插<meta name="referrer" content="never">
        2
    opengps   144 天前   ♥ 1
    表示不太敢引用他人图片,各大云都有对象存储免费额度,个人用量有限,何必非要图片放在他处,将来丢了都没法找回
        3
    letitbesqzr   144 天前
    @delectate #1

    refControl 似乎有没有 chrome 插件?

    目前使用的方案就是在 meta 插 , <meta name="referrer" content="never"> , 但是不知道有没有更灵活的方式,有些网站的防盗链 禁止了空 referrer ...
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4225 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 09:00 · PVG 17:00 · LAX 01:00 · JFK 04:00
    ♥ Do have faith in what you're doing.