@whitesev/utils 1.8.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1568,14 +1568,23 @@ System.register('Utils', [], (function (exports) {
1568
1568
  * @private
1569
1569
  */
1570
1570
  beforeRequestCallBack(details) {
1571
- if (details.allowInterceptConfig) {
1572
- // 首先配置得存在,不然默认允许拦截
1573
- if (typeof details.allowInterceptConfig.beforeRequest === "boolean" &&
1574
- !details.allowInterceptConfig.beforeRequest) {
1575
- // 设置了禁止拦截
1571
+ if (typeof details.allowInterceptConfig === "boolean") {
1572
+ if (!details.allowInterceptConfig) {
1573
+ // 不允许拦截
1576
1574
  return details;
1577
1575
  }
1578
1576
  }
1577
+ else {
1578
+ if (details.allowInterceptConfig != null) {
1579
+ // 配置存在
1580
+ // 细分处理是否拦截
1581
+ if (typeof details.allowInterceptConfig.beforeRequest === "boolean" &&
1582
+ !details.allowInterceptConfig.beforeRequest) {
1583
+ // 设置了禁止拦截
1584
+ return details;
1585
+ }
1586
+ }
1587
+ }
1579
1588
  for (let index = 0; index < this.$config.configList.length; index++) {
1580
1589
  let item = this.$config.configList[index];
1581
1590
  if (typeof item.fn === "function") {
@@ -1637,15 +1646,24 @@ System.register('Utils', [], (function (exports) {
1637
1646
  * @param details 请求的配置
1638
1647
  */
1639
1648
  successResponseCallBack(response, details) {
1640
- if (details.allowInterceptConfig) {
1641
- // 首先配置得存在,不然默认允许拦截
1642
- if (typeof details.allowInterceptConfig.afterResponseSuccess ===
1643
- "boolean" &&
1644
- !details.allowInterceptConfig.afterResponseSuccess) {
1645
- // 设置了禁止拦截
1649
+ if (typeof details.allowInterceptConfig === "boolean") {
1650
+ if (!details.allowInterceptConfig) {
1651
+ // 不允许拦截
1646
1652
  return details;
1647
1653
  }
1648
1654
  }
1655
+ else {
1656
+ if (details.allowInterceptConfig != null) {
1657
+ // 配置存在
1658
+ // 细分处理是否拦截
1659
+ if (typeof details.allowInterceptConfig.afterResponseSuccess ===
1660
+ "boolean" &&
1661
+ !details.allowInterceptConfig.afterResponseSuccess) {
1662
+ // 设置了禁止拦截
1663
+ return details;
1664
+ }
1665
+ }
1666
+ }
1649
1667
  for (let index = 0; index < this.$config.configList.length; index++) {
1650
1668
  let item = this.$config.configList[index];
1651
1669
  if (typeof item.successFn === "function") {
@@ -1659,17 +1677,28 @@ System.register('Utils', [], (function (exports) {
1659
1677
  /**
1660
1678
  * 失败的回调
1661
1679
  * @param data 配置
1680
+ * @returns
1681
+ * 返回null|undefined就是拦截掉了
1662
1682
  */
1663
1683
  errorResponseCallBack(data) {
1664
- if (data.details.allowInterceptConfig) {
1665
- // 首先配置得存在,不然默认允许拦截
1666
- if (typeof data.details.allowInterceptConfig.afterResponseError ===
1667
- "boolean" &&
1668
- !data.details.allowInterceptConfig.afterResponseError) {
1669
- // 设置了禁止拦截
1684
+ if (typeof data.details.allowInterceptConfig === "boolean") {
1685
+ if (!data.details.allowInterceptConfig) {
1686
+ // 不允许拦截
1670
1687
  return data;
1671
1688
  }
1672
1689
  }
1690
+ else {
1691
+ if (data.details.allowInterceptConfig != null) {
1692
+ // 配置存在
1693
+ // 细分处理是否拦截
1694
+ if (typeof data.details.allowInterceptConfig.afterResponseError ===
1695
+ "boolean" &&
1696
+ !data.details.allowInterceptConfig.afterResponseError) {
1697
+ // 设置了禁止拦截
1698
+ return data;
1699
+ }
1700
+ }
1701
+ }
1673
1702
  for (let index = 0; index < this.$config.configList.length; index++) {
1674
1703
  let item = this.$config.configList[index];
1675
1704
  if (typeof item.errorFn === "function") {
@@ -1740,10 +1769,11 @@ System.register('Utils', [], (function (exports) {
1740
1769
  /**
1741
1770
  * 获取请求配置
1742
1771
  * @param method 当前请求方法,默认get
1743
- * @param resolve promise回调
1744
1772
  * @param details 请求配置
1773
+ * @param resolve promise回调
1774
+ * @param reject 抛出错误回调
1745
1775
  */
1746
- getDetails(method, resolve, details) {
1776
+ getDetails(method, details, resolve, reject) {
1747
1777
  let that = this;
1748
1778
  let result = {
1749
1779
  url: details.url || this.context.#defaultDetails.url,
@@ -1769,10 +1799,10 @@ System.register('Utils', [], (function (exports) {
1769
1799
  user: details.user || this.context.#defaultDetails.user,
1770
1800
  password: details.password || this.context.#defaultDetails.password,
1771
1801
  onabort(...args) {
1772
- that.context.HttpxCallBack.onAbort(details, resolve, args);
1802
+ that.context.HttpxCallBack.onAbort(details, resolve, reject, args);
1773
1803
  },
1774
1804
  onerror(...args) {
1775
- that.context.HttpxCallBack.onError(details, resolve, args);
1805
+ that.context.HttpxCallBack.onError(details, resolve, reject, args);
1776
1806
  },
1777
1807
  onloadstart(...args) {
1778
1808
  that.context.HttpxCallBack.onLoadStart(details, args);
@@ -1784,10 +1814,10 @@ System.register('Utils', [], (function (exports) {
1784
1814
  that.context.HttpxCallBack.onReadyStateChange(details, args);
1785
1815
  },
1786
1816
  ontimeout(...args) {
1787
- that.context.HttpxCallBack.onTimeout(details, resolve, args);
1817
+ that.context.HttpxCallBack.onTimeout(details, resolve, reject, args);
1788
1818
  },
1789
1819
  onload(...args) {
1790
- that.context.HttpxCallBack.onLoad(details, resolve, args);
1820
+ that.context.HttpxCallBack.onLoad(details, resolve, reject, args);
1791
1821
  },
1792
1822
  };
1793
1823
  if (typeof this.context.GM_Api.xmlHttpRequest !== "function") {
@@ -1917,9 +1947,10 @@ System.register('Utils', [], (function (exports) {
1917
1947
  * onabort请求被取消-触发
1918
1948
  * @param details 配置
1919
1949
  * @param resolve 回调
1950
+ * @param reject 抛出错误
1920
1951
  * @param argumentsList 参数列表
1921
1952
  */
1922
- onAbort(details, resolve, argumentsList) {
1953
+ onAbort(details, resolve, reject, argumentsList) {
1923
1954
  if ("onabort" in details) {
1924
1955
  details.onabort.apply(this, argumentsList);
1925
1956
  }
@@ -1932,6 +1963,7 @@ System.register('Utils', [], (function (exports) {
1932
1963
  response: null,
1933
1964
  details: details,
1934
1965
  }) == null) {
1966
+ // reject(new TypeError("response is intercept with onabort"));
1935
1967
  return;
1936
1968
  }
1937
1969
  resolve({
@@ -1945,9 +1977,10 @@ System.register('Utils', [], (function (exports) {
1945
1977
  * onerror请求异常-触发
1946
1978
  * @param details 配置
1947
1979
  * @param resolve 回调
1980
+ * @param reject 抛出错误
1948
1981
  * @param argumentsList 响应的参数列表
1949
1982
  */
1950
- onError(details, resolve, argumentsList) {
1983
+ onError(details, resolve, reject, argumentsList) {
1951
1984
  if ("onerror" in details) {
1952
1985
  details.onerror.apply(this, argumentsList);
1953
1986
  }
@@ -1964,6 +1997,7 @@ System.register('Utils', [], (function (exports) {
1964
1997
  response: response,
1965
1998
  details: details,
1966
1999
  }) == null) {
2000
+ // reject(new TypeError("response is intercept with onerror"));
1967
2001
  return;
1968
2002
  }
1969
2003
  resolve({
@@ -1978,9 +2012,10 @@ System.register('Utils', [], (function (exports) {
1978
2012
  * ontimeout请求超时-触发
1979
2013
  * @param details 配置
1980
2014
  * @param resolve 回调
2015
+ * @param reject 抛出错误
1981
2016
  * @param argumentsList 参数列表
1982
2017
  */
1983
- onTimeout(details, resolve, argumentsList) {
2018
+ onTimeout(details, resolve, reject, argumentsList) {
1984
2019
  if ("ontimeout" in details) {
1985
2020
  details.ontimeout.apply(this, argumentsList);
1986
2021
  }
@@ -1993,6 +2028,7 @@ System.register('Utils', [], (function (exports) {
1993
2028
  response: (argumentsList || [null])[0],
1994
2029
  details: details,
1995
2030
  }) == null) {
2031
+ // reject(new TypeError("response is intercept with ontimeout"));
1996
2032
  return;
1997
2033
  }
1998
2034
  resolve({
@@ -2019,9 +2055,10 @@ System.register('Utils', [], (function (exports) {
2019
2055
  * onload加载完毕-触发
2020
2056
  * @param details 请求的配置
2021
2057
  * @param resolve 回调
2058
+ * @param reject 抛出错误
2022
2059
  * @param argumentsList 参数列表
2023
2060
  */
2024
- onLoad(details, resolve, argumentsList) {
2061
+ onLoad(details, resolve, reject, argumentsList) {
2025
2062
  /* X浏览器会因为设置了responseType导致不返回responseText */
2026
2063
  let Response = argumentsList[0];
2027
2064
  /* responseText为空,response不为空的情况 */
@@ -2076,6 +2113,7 @@ System.register('Utils', [], (function (exports) {
2076
2113
  /* 状态码2xx都是成功的 */
2077
2114
  if (Math.floor(Response.status / 100) === 2) {
2078
2115
  if (this.context.HttpxResponseHook.successResponseCallBack(Response, details) == null) {
2116
+ // reject(new TypeError("response is intercept with onloada"));
2079
2117
  return;
2080
2118
  }
2081
2119
  resolve({
@@ -2087,7 +2125,7 @@ System.register('Utils', [], (function (exports) {
2087
2125
  });
2088
2126
  }
2089
2127
  else {
2090
- this.context.HttpxCallBack.onError(details, resolve, argumentsList);
2128
+ this.context.HttpxCallBack.onError(details, resolve, reject, argumentsList);
2091
2129
  }
2092
2130
  },
2093
2131
  /**
@@ -2398,8 +2436,8 @@ System.register('Utils', [], (function (exports) {
2398
2436
  async get(...args) {
2399
2437
  let that = this;
2400
2438
  let details = this.HttpxRequestDetails.handleBeforeRequestDetails(...args);
2401
- return new Promise((resolve) => {
2402
- let requestDetails = that.HttpxRequestDetails.getDetails("get", resolve, details);
2439
+ return new Promise((resolve, reject) => {
2440
+ let requestDetails = that.HttpxRequestDetails.getDetails("GET", details, resolve, reject);
2403
2441
  Reflect.deleteProperty(requestDetails, "onprogress");
2404
2442
  requestDetails = that.HttpxRequestDetails.handle(requestDetails);
2405
2443
  that.HttpxRequest.request(requestDetails);
@@ -2411,8 +2449,8 @@ System.register('Utils', [], (function (exports) {
2411
2449
  async post(...args) {
2412
2450
  let that = this;
2413
2451
  let details = this.HttpxRequestDetails.handleBeforeRequestDetails(...args);
2414
- return new Promise((resolve) => {
2415
- let requestDetails = that.HttpxRequestDetails.getDetails("post", resolve, details);
2452
+ return new Promise((resolve, reject) => {
2453
+ let requestDetails = that.HttpxRequestDetails.getDetails("POST", details, resolve, reject);
2416
2454
  requestDetails = that.HttpxRequestDetails.handle(requestDetails);
2417
2455
  that.HttpxRequest.request(requestDetails);
2418
2456
  });
@@ -2423,8 +2461,8 @@ System.register('Utils', [], (function (exports) {
2423
2461
  async head(...args) {
2424
2462
  let that = this;
2425
2463
  let details = this.HttpxRequestDetails.handleBeforeRequestDetails(...args);
2426
- return new Promise((resolve) => {
2427
- let requestDetails = that.HttpxRequestDetails.getDetails("head", resolve, details);
2464
+ return new Promise((resolve, reject) => {
2465
+ let requestDetails = that.HttpxRequestDetails.getDetails("HEAD", details, resolve, reject);
2428
2466
  Reflect.deleteProperty(requestDetails, "onprogress");
2429
2467
  requestDetails = that.HttpxRequestDetails.handle(requestDetails);
2430
2468
  that.HttpxRequest.request(requestDetails);
@@ -2436,8 +2474,8 @@ System.register('Utils', [], (function (exports) {
2436
2474
  async options(...args) {
2437
2475
  let that = this;
2438
2476
  let details = this.HttpxRequestDetails.handleBeforeRequestDetails(...args);
2439
- return new Promise((resolve) => {
2440
- let requestDetails = that.HttpxRequestDetails.getDetails("options", resolve, details);
2477
+ return new Promise((resolve, reject) => {
2478
+ let requestDetails = that.HttpxRequestDetails.getDetails("OPTIONS", details, resolve, reject);
2441
2479
  Reflect.deleteProperty(requestDetails, "onprogress");
2442
2480
  requestDetails = that.HttpxRequestDetails.handle(requestDetails);
2443
2481
  that.HttpxRequest.request(requestDetails);
@@ -2449,8 +2487,8 @@ System.register('Utils', [], (function (exports) {
2449
2487
  async delete(...args) {
2450
2488
  let that = this;
2451
2489
  let details = this.HttpxRequestDetails.handleBeforeRequestDetails(...args);
2452
- return new Promise((resolve) => {
2453
- let requestDetails = that.HttpxRequestDetails.getDetails("delete", resolve, details);
2490
+ return new Promise((resolve, reject) => {
2491
+ let requestDetails = that.HttpxRequestDetails.getDetails("DELETE", details, resolve, reject);
2454
2492
  Reflect.deleteProperty(requestDetails, "onprogress");
2455
2493
  requestDetails = that.HttpxRequestDetails.handle(requestDetails);
2456
2494
  that.HttpxRequest.request(requestDetails);
@@ -2462,8 +2500,8 @@ System.register('Utils', [], (function (exports) {
2462
2500
  async put(...args) {
2463
2501
  let that = this;
2464
2502
  let details = this.HttpxRequestDetails.handleBeforeRequestDetails(...args);
2465
- return new Promise((resolve) => {
2466
- let requestDetails = that.HttpxRequestDetails.getDetails("put", resolve, details);
2503
+ return new Promise((resolve, reject) => {
2504
+ let requestDetails = that.HttpxRequestDetails.getDetails("PUT", details, resolve, reject);
2467
2505
  requestDetails = that.HttpxRequestDetails.handle(requestDetails);
2468
2506
  that.HttpxRequest.request(requestDetails);
2469
2507
  });