全局拦截各种http请求

摘要:
http请求无非就是ajax、src、href、表单functionhookAJAX(){XMLHttpRequest.prototype.nativeOpen=XMLHttpRequest.prototype.open;varcustomizeOpen=function(method,url,async,user,password){//dosomethingthis.nativeOpen(me

http请求无非就是ajax、src、href、表单

 functionhookAJAX() {
    XMLHttpRequest.prototype.nativeOpen =XMLHttpRequest.prototype.open;
    var customizeOpen = function(method, url, async, user, password) {
      //do something
      this.nativeOpen(method, url, async, user, password);
    };
    XMLHttpRequest.prototype.open =customizeOpen;
  }
  /**
   *全局拦截Image的图片请求添加token
   *
   */
  functionhookImg() {
    const property = Object.getOwnPropertyDescriptor(Image.prototype, 'src');
    const nativeSet =property.set;
    functioncustomiseSrcSet(url) {
      //do something
      nativeSet.call(this, url);
    }
    Object.defineProperty(Image.prototype, 'src', {
      set: customiseSrcSet,
    });
  }
  /**
   * 拦截全局open的url添加token
   *
   */
  functionhookOpen() {
    const nativeOpen =window.open;
    window.open = function(url) {
      //do something
      nativeOpen.call(this, url);
    };
  }
  functionhookFetch() {
    var fet = Object.getOwnPropertyDescriptor(window, 'fetch')
    Object.defineProperty(window, 'fetch', {
      value: function(a, b, c) {
        //do something
        return fet.value.apply(this, args)
      }
    })
  }

免责声明:文章转载自《全局拦截各种http请求》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇js 时间转换毫秒的四种方法(转)Git使用:下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JMeter处理Cookie与Session

cookie 和session 的区别: 1、cookie数据存放在客户的浏览器上,session数据放在服务器上。 2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗   考虑到安全应当使用session。 3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能   考虑到减轻服务器性能...

Android 显示 WebView ,加载URL 时,向webview的 header 里面传递参数

1.主要布局 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/too...

9.springMVC中的拦截器

springMVC中的拦截器大概大致可以分为以下几个步骤去学习: 1.自定义一个类实现HandlerInterceptor接口,这里要了解其中几个方法的作用 2.在springMVC的配置文件中添加拦截器的配置 3.了解多个拦截器的执行过程 4.写一个拦截器的demo 1.先来看第一步:自定义一个类实现HandlerInterceptor接口,其中接口中的...

【SSRF】之SSRF的理论知识

(本文仅为平时学习记录,若有错误请大佬指出,如果本文能帮到你那我也是很开心啦) 本文参考https://xz.aliyun.com/t/2115#toc-2,十分感谢! 一、概念 SSRF全称为Server-side Request Fogery,中文含义为服务器端请求伪造,漏洞产生的原因是服务端提供了能够从其他服务器应用获取数据的功能,比如从指定的UR...

c#实现多线程代码例子

相信大家都有用过网际快车等下载资源的经历,它里面是可以设置线程数的(近年版本默认是10,曾经默认是5)。它会将文件分成与线程数相同的部分,然后每个线程下载自己的那一部分,这样下载效率就有可能提高。相信大家都有加多线程数,提升下载效率的经历。但细心的用户会发现,在带宽一定的情况下,并不是线程越多,速度越快,而是在某一点达到峰值。在C#中用多线程并不难实现。它...

Firefox关闭GET请求到detectportal.firefox.com网站的方法

最近用Firefox挂代理抓包发现,Firefox浏览器每几秒钟发送一个GET包到 http://detectportal.firefox.com/success.txt 看着就神烦,于是google搜到了相关的关闭方法. 在地址栏中输入 about:config  搜索 network.captive-portal-service.enabled...