Chrome 显示反盗链图片扩展,WebRequest API应用实例

本文介绍了如何使用Chrome的WebRequest API来改变HTTP请求中的Referer字段,以绕过服务器的反盗链机制。通过修改manifest.json和创建规则,实现了对特定请求的Referer篡改,从而正常获取资源。示例代码和完整扩展可以在指定链接下载。
摘要由CSDN通过智能技术生成
      出于自我资源保护和排他竞争或者某些安全原因,不少资源(图片,视频等)限制引用范围。比如新浪博客的图片,同一个图片地址,在博客上好好的,贴到其他地方就变成”仅限新浪博客用户交流使用“了。

服务器是怎样区分请求来源的呢?答案就是浏览器在发起请求时,会发送一组叫HTTP header的信息,而其中又有一个叫Referer的字段是条件请求页面的URL。对有反盗链机制的资源,服务器检测出这个Referer不是来自许可域名,就直接拒绝请求或者重定向到错误图片了。

既然这样,只要把这个Referer改成有效的URL,就能欺骗服务器,正常接受请求了。

在以前,浏览器下直接对HTTP请求操作是Firefox的专利,其它浏览器想达到类似效果,需通过Fiddler2 Proximation之类的外部软件修改。不过最近的Google Chrome浏览器引入了一组WebRequest API,现在终于能在Chrome上进行类似的操作。

可是由于Google 的扩展站是不允许发布试验阶段API的扩展的,实际成品不多,而官方文档的例子也稍显简单。这是我写的一个操作HTTP请求中的http header实例,希望对你用起这组API有参考作用。


下面取自官方文档,一个典型的请求在不同阶段会激发不同的事件。很明显,我们要修改的是HTTP 请求headers,相应的事件是onSendHeaders和onBeforeSendHeaders都可以,这里用后者。

  |
  v
onBeforeRequest --------------------------------
  |          ^             |                    | [data and file URLs]
  |          |             | [redirection       |
  |           ----------   |  from extension]   |
  v                     |  |                    |
onBeforeSendHeaders     |  |                    |
  |               
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值