@be-link/request 1.45.1-beta.0 → 1.45.1-beta.2

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.
@@ -12,6 +12,8 @@ export declare class BeLinkClient extends HttpClient {
12
12
  private token;
13
13
  private initialized;
14
14
  private tokenListenerCleanup;
15
+ private tokenHeaderName;
16
+ private tokenStorageKey;
15
17
  constructor();
16
18
  /**
17
19
  * 初始化客户端
@@ -19,6 +21,11 @@ export declare class BeLinkClient extends HttpClient {
19
21
  init(config: {
20
22
  mode: string;
21
23
  loginPath?: string | (() => void);
24
+ baseUrl?: string;
25
+ /** Token 请求头名称(默认 'x-belink-authorization') */
26
+ tokenHeaderName?: string;
27
+ /** Token 在 localStorage 中的存储键名(默认 'token') */
28
+ tokenStorageKey?: string;
22
29
  }): void;
23
30
  /**
24
31
  * 设置 Token
@@ -1 +1 @@
1
- {"version":3,"file":"BeLinkClient.d.ts","sourceRoot":"","sources":["../../../src/application/clients/BeLinkClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAU9D;;;GAGG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAC1C,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,oBAAoB,CAA6B;;IAiBzD;;OAEG;IACI,IAAI,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAA;KAAE,GAAG,IAAI;IAgB9E;;OAEG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIpC;;OAEG;IACI,QAAQ,IAAI,MAAM,GAAG,IAAI;IAIhC;;;OAGG;IACI,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,MAAM,IAAI;IAqDxE;;OAEG;IACI,iBAAiB,IAAI,IAAI;IAIhC;;OAEG;IACI,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI;IAIpE;;OAEG;IACU,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/C;;;OAGG;IACU,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/C;;OAEG;IACU,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7D;;;OAGG;IACU,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D;;OAEG;IACI,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAaxC;;OAEG;IACU,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAc3F;;OAEG;IACH,OAAO,CAAC,wBAAwB;CAsBjC"}
1
+ {"version":3,"file":"BeLinkClient.d.ts","sourceRoot":"","sources":["../../../src/application/clients/BeLinkClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAU9D;;;GAGG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAC1C,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,eAAe,CAAwB;IAC/C,OAAO,CAAC,eAAe,CAA8B;;IAiBrD;;OAEG;IACI,IAAI,CAAC,MAAM,EAAE;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;QAClC,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,+CAA+C;QAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,8CAA8C;QAC9C,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,GAAG,IAAI;IAkCR;;OAEG;IACI,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIpC;;OAEG;IACI,QAAQ,IAAI,MAAM,GAAG,IAAI;IAIhC;;;OAGG;IACI,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG,MAAM,IAAI;IAqDxE;;OAEG;IACI,iBAAiB,IAAI,IAAI;IAIhC;;OAEG;IACI,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI;IAIpE;;OAEG;IACU,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/C;;;OAGG;IACU,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/C;;OAEG;IACU,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7D;;;OAGG;IACU,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D;;OAEG;IACI,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAaxC;;OAEG;IACU,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAc3F;;OAEG;IACH,OAAO,CAAC,wBAAwB;CAuBjC"}
@@ -6,7 +6,20 @@ import { ApiResponse } from '../../core/types/response.types';
6
6
  * 简化版客户端,无认证逻辑
7
7
  */
8
8
  export declare class LiveClient extends HttpClient {
9
+ private tokenHeaderName;
9
10
  constructor();
11
+ /**
12
+ * 初始化客户端
13
+ */
14
+ init(config: {
15
+ baseUrl?: string;
16
+ /** Token 请求头名称(默认 'x-belink-authorization') */
17
+ tokenHeaderName?: string;
18
+ }): void;
19
+ /**
20
+ * 获取 Token 请求头名称
21
+ */
22
+ getTokenHeaderName(): string;
10
23
  /**
11
24
  * 重写请求方法(向后兼容旧版 API)
12
25
  */
@@ -1 +1 @@
1
- {"version":3,"file":"LiveClient.d.ts","sourceRoot":"","sources":["../../../src/application/clients/LiveClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D;;;GAGG;AACH,qBAAa,UAAW,SAAQ,UAAU;;IAKxC;;OAEG;IACU,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAQ5F"}
1
+ {"version":3,"file":"LiveClient.d.ts","sourceRoot":"","sources":["../../../src/application/clients/LiveClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D;;;GAGG;AACH,qBAAa,UAAW,SAAQ,UAAU;IACxC,OAAO,CAAC,eAAe,CAAwB;;IAM/C;;OAEG;IACI,IAAI,CAAC,MAAM,EAAE;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,+CAA+C;QAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,GAAG,IAAI;IASR;;OAEG;IACI,kBAAkB,IAAI,MAAM;IAInC;;OAEG;IACU,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CAQ5F"}
@@ -41,6 +41,12 @@ export interface AppConfig {
41
41
  mode: 'development' | 'testing' | 'production';
42
42
  /** 默认超时时间 */
43
43
  timeout?: number;
44
+ /** API 基础地址 */
45
+ baseUrl?: string;
46
+ /** Token 请求头名称(默认 'x-belink-authorization') */
47
+ tokenHeaderName?: string;
48
+ /** Token 在 localStorage 中的存储键名(默认 'token') */
49
+ tokenStorageKey?: string;
44
50
  /** 登录路径或回调 */
45
51
  loginPath?: string | (() => void);
46
52
  /** 加密配置 */
@@ -1 +1 @@
1
- {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/config.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS;IACT,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW;IACX,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;IAC/C,aAAa;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAClC,WAAW;IACX,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,aAAa;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mBAAmB;IACnB,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,SAmB5B,CAAC"}
1
+ {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/config.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,gBAAgB;IAChB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS;IACT,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW;IACX,IAAI,EAAE,aAAa,GAAG,SAAS,GAAG,YAAY,CAAC;IAC/C,aAAa;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8CAA8C;IAC9C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;IAClC,WAAW;IACX,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,aAAa;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mBAAmB;IACnB,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,SAmB5B,CAAC"}
@@ -4,13 +4,10 @@ import { ResponseContext } from './response.types';
4
4
  * 请求错误类型
5
5
  */
6
6
  export interface RequestError {
7
+ code?: string;
7
8
  message?: string;
8
9
  status?: number;
9
- response?: {
10
- status: number;
11
- data?: unknown;
12
- };
13
- code?: string;
10
+ data?: unknown;
14
11
  }
15
12
  /**
16
13
  * 请求拦截器接口
@@ -1 +1 @@
1
- {"version":3,"file":"interceptor.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/interceptor.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,SAAS,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAAC;IACjF,aAAa;IACb,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,UAAU,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IACjG,aAAa;IACb,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
1
+ {"version":3,"file":"interceptor.types.d.ts","sourceRoot":"","sources":["../../../src/core/types/interceptor.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,SAAS,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAAC;IACjF,aAAa;IACb,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,UAAU,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IACjG,aAAa;IACb,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,GAAG,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;CACnE;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
package/dist/index.cjs.js CHANGED
@@ -499,6 +499,17 @@ var AxiosAdapter = /** @class */ (function () {
499
499
  return this.instance;
500
500
  }
501
501
  });
502
+ /**
503
+ * 设置 BaseURL
504
+ */
505
+ Object.defineProperty(AxiosAdapter.prototype, "setBaseUrl", {
506
+ enumerable: false,
507
+ configurable: true,
508
+ writable: true,
509
+ value: function (baseUrl) {
510
+ this.instance.defaults.baseURL = baseUrl;
511
+ }
512
+ });
502
513
  /**
503
514
  * 处理错误
504
515
  */
@@ -1618,9 +1629,8 @@ var AuthInterceptor = /** @class */ (function () {
1618
1629
  value: function (error) {
1619
1630
  return __awaiter$3(this, void 0, void 0, function () {
1620
1631
  var status, loginPath;
1621
- var _a;
1622
- return __generator$3(this, function (_b) {
1623
- status = ((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) || error.status;
1632
+ return __generator$3(this, function (_a) {
1633
+ status = error.status;
1624
1634
  if (status === 401) {
1625
1635
  // 清理时间同步数据
1626
1636
  this.timeSyncService.clear();
@@ -1687,6 +1697,18 @@ var BeLinkClient = /** @class */ (function (_super) {
1687
1697
  writable: true,
1688
1698
  value: null
1689
1699
  });
1700
+ Object.defineProperty(_this, "tokenHeaderName", {
1701
+ enumerable: true,
1702
+ configurable: true,
1703
+ writable: true,
1704
+ value: TOKEN_HEADER
1705
+ });
1706
+ Object.defineProperty(_this, "tokenStorageKey", {
1707
+ enumerable: true,
1708
+ configurable: true,
1709
+ writable: true,
1710
+ value: STORAGE_KEYS.TOKEN
1711
+ });
1690
1712
  _this.configManager = ConfigManager.getInstance();
1691
1713
  // 先初始化 timeSyncService
1692
1714
  _this.timeSyncService = new TimeSyncService(_this.configManager.get('timeSync') || { enabled: true }, _this.configManager.get('mode'));
@@ -1705,9 +1727,24 @@ var BeLinkClient = /** @class */ (function (_super) {
1705
1727
  this.configManager.init({
1706
1728
  mode: config.mode,
1707
1729
  loginPath: config.loginPath,
1730
+ baseUrl: config.baseUrl,
1731
+ tokenHeaderName: config.tokenHeaderName,
1732
+ tokenStorageKey: config.tokenStorageKey,
1708
1733
  });
1709
1734
  // 更新时间同步服务的模式
1710
1735
  this.timeSyncService.setMode(config.mode);
1736
+ // 设置 baseUrl
1737
+ if (config.baseUrl) {
1738
+ this.adapter.setBaseUrl(config.baseUrl);
1739
+ }
1740
+ // 设置 tokenHeaderName(请求头名称)
1741
+ if (config.tokenHeaderName) {
1742
+ this.tokenHeaderName = config.tokenHeaderName;
1743
+ }
1744
+ // 设置 tokenStorageKey(localStorage 存储键名)
1745
+ if (config.tokenStorageKey) {
1746
+ this.tokenStorageKey = config.tokenStorageKey;
1747
+ }
1711
1748
  // 设置默认拦截器
1712
1749
  if (!this.initialized) {
1713
1750
  this.setupDefaultInterceptors();
@@ -1899,12 +1936,12 @@ var BeLinkClient = /** @class */ (function (_super) {
1899
1936
  if (!isBrowser()) {
1900
1937
  return;
1901
1938
  }
1902
- var token = localStorage.getItem(STORAGE_KEYS.TOKEN);
1939
+ var token = localStorage.getItem(this.tokenStorageKey);
1903
1940
  if (token) {
1904
1941
  if (!config.headers) {
1905
1942
  config.headers = {};
1906
1943
  }
1907
- config.headers['x-belink-authorization'] = this.encryptionService.encryptToken(token);
1944
+ config.headers[this.tokenHeaderName] = this.encryptionService.encryptToken(token);
1908
1945
  }
1909
1946
  }
1910
1947
  });
@@ -1945,8 +1982,9 @@ var BeLinkClient = /** @class */ (function (_super) {
1945
1982
  priority: 1,
1946
1983
  }));
1947
1984
  // Token 拦截器
1948
- this.addRequestInterceptor(new TokenInterceptor(function () { return _this.token || localStorage.getItem(STORAGE_KEYS.TOKEN); }, this.encryptionService, {
1985
+ this.addRequestInterceptor(new TokenInterceptor(function () { return _this.token || localStorage.getItem(_this.tokenStorageKey); }, this.encryptionService, {
1949
1986
  priority: 2,
1987
+ headerName: this.tokenHeaderName,
1950
1988
  }));
1951
1989
  // 认证拦截器(处理 401)
1952
1990
  this.addResponseInterceptor(new AuthInterceptor(this.configManager, this.timeSyncService, {
@@ -1967,8 +2005,42 @@ var beLinkRequest = new BeLinkClient();
1967
2005
  var LiveClient = /** @class */ (function (_super) {
1968
2006
  __extends$1(LiveClient, _super);
1969
2007
  function LiveClient() {
1970
- return _super.call(this) || this;
2008
+ var _this = _super.call(this) || this;
2009
+ Object.defineProperty(_this, "tokenHeaderName", {
2010
+ enumerable: true,
2011
+ configurable: true,
2012
+ writable: true,
2013
+ value: TOKEN_HEADER
2014
+ });
2015
+ return _this;
1971
2016
  }
2017
+ /**
2018
+ * 初始化客户端
2019
+ */
2020
+ Object.defineProperty(LiveClient.prototype, "init", {
2021
+ enumerable: false,
2022
+ configurable: true,
2023
+ writable: true,
2024
+ value: function (config) {
2025
+ if (config.baseUrl) {
2026
+ this.adapter.setBaseUrl(config.baseUrl);
2027
+ }
2028
+ if (config.tokenHeaderName) {
2029
+ this.tokenHeaderName = config.tokenHeaderName;
2030
+ }
2031
+ }
2032
+ });
2033
+ /**
2034
+ * 获取 Token 请求头名称
2035
+ */
2036
+ Object.defineProperty(LiveClient.prototype, "getTokenHeaderName", {
2037
+ enumerable: false,
2038
+ configurable: true,
2039
+ writable: true,
2040
+ value: function () {
2041
+ return this.tokenHeaderName;
2042
+ }
2043
+ });
1972
2044
  /**
1973
2045
  * 重写请求方法(向后兼容旧版 API)
1974
2046
  */
package/dist/index.esm.js CHANGED
@@ -496,6 +496,17 @@ var AxiosAdapter = /** @class */ (function () {
496
496
  return this.instance;
497
497
  }
498
498
  });
499
+ /**
500
+ * 设置 BaseURL
501
+ */
502
+ Object.defineProperty(AxiosAdapter.prototype, "setBaseUrl", {
503
+ enumerable: false,
504
+ configurable: true,
505
+ writable: true,
506
+ value: function (baseUrl) {
507
+ this.instance.defaults.baseURL = baseUrl;
508
+ }
509
+ });
499
510
  /**
500
511
  * 处理错误
501
512
  */
@@ -1615,9 +1626,8 @@ var AuthInterceptor = /** @class */ (function () {
1615
1626
  value: function (error) {
1616
1627
  return __awaiter$3(this, void 0, void 0, function () {
1617
1628
  var status, loginPath;
1618
- var _a;
1619
- return __generator$3(this, function (_b) {
1620
- status = ((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) || error.status;
1629
+ return __generator$3(this, function (_a) {
1630
+ status = error.status;
1621
1631
  if (status === 401) {
1622
1632
  // 清理时间同步数据
1623
1633
  this.timeSyncService.clear();
@@ -1684,6 +1694,18 @@ var BeLinkClient = /** @class */ (function (_super) {
1684
1694
  writable: true,
1685
1695
  value: null
1686
1696
  });
1697
+ Object.defineProperty(_this, "tokenHeaderName", {
1698
+ enumerable: true,
1699
+ configurable: true,
1700
+ writable: true,
1701
+ value: TOKEN_HEADER
1702
+ });
1703
+ Object.defineProperty(_this, "tokenStorageKey", {
1704
+ enumerable: true,
1705
+ configurable: true,
1706
+ writable: true,
1707
+ value: STORAGE_KEYS.TOKEN
1708
+ });
1687
1709
  _this.configManager = ConfigManager.getInstance();
1688
1710
  // 先初始化 timeSyncService
1689
1711
  _this.timeSyncService = new TimeSyncService(_this.configManager.get('timeSync') || { enabled: true }, _this.configManager.get('mode'));
@@ -1702,9 +1724,24 @@ var BeLinkClient = /** @class */ (function (_super) {
1702
1724
  this.configManager.init({
1703
1725
  mode: config.mode,
1704
1726
  loginPath: config.loginPath,
1727
+ baseUrl: config.baseUrl,
1728
+ tokenHeaderName: config.tokenHeaderName,
1729
+ tokenStorageKey: config.tokenStorageKey,
1705
1730
  });
1706
1731
  // 更新时间同步服务的模式
1707
1732
  this.timeSyncService.setMode(config.mode);
1733
+ // 设置 baseUrl
1734
+ if (config.baseUrl) {
1735
+ this.adapter.setBaseUrl(config.baseUrl);
1736
+ }
1737
+ // 设置 tokenHeaderName(请求头名称)
1738
+ if (config.tokenHeaderName) {
1739
+ this.tokenHeaderName = config.tokenHeaderName;
1740
+ }
1741
+ // 设置 tokenStorageKey(localStorage 存储键名)
1742
+ if (config.tokenStorageKey) {
1743
+ this.tokenStorageKey = config.tokenStorageKey;
1744
+ }
1708
1745
  // 设置默认拦截器
1709
1746
  if (!this.initialized) {
1710
1747
  this.setupDefaultInterceptors();
@@ -1896,12 +1933,12 @@ var BeLinkClient = /** @class */ (function (_super) {
1896
1933
  if (!isBrowser()) {
1897
1934
  return;
1898
1935
  }
1899
- var token = localStorage.getItem(STORAGE_KEYS.TOKEN);
1936
+ var token = localStorage.getItem(this.tokenStorageKey);
1900
1937
  if (token) {
1901
1938
  if (!config.headers) {
1902
1939
  config.headers = {};
1903
1940
  }
1904
- config.headers['x-belink-authorization'] = this.encryptionService.encryptToken(token);
1941
+ config.headers[this.tokenHeaderName] = this.encryptionService.encryptToken(token);
1905
1942
  }
1906
1943
  }
1907
1944
  });
@@ -1942,8 +1979,9 @@ var BeLinkClient = /** @class */ (function (_super) {
1942
1979
  priority: 1,
1943
1980
  }));
1944
1981
  // Token 拦截器
1945
- this.addRequestInterceptor(new TokenInterceptor(function () { return _this.token || localStorage.getItem(STORAGE_KEYS.TOKEN); }, this.encryptionService, {
1982
+ this.addRequestInterceptor(new TokenInterceptor(function () { return _this.token || localStorage.getItem(_this.tokenStorageKey); }, this.encryptionService, {
1946
1983
  priority: 2,
1984
+ headerName: this.tokenHeaderName,
1947
1985
  }));
1948
1986
  // 认证拦截器(处理 401)
1949
1987
  this.addResponseInterceptor(new AuthInterceptor(this.configManager, this.timeSyncService, {
@@ -1964,8 +2002,42 @@ var beLinkRequest = new BeLinkClient();
1964
2002
  var LiveClient = /** @class */ (function (_super) {
1965
2003
  __extends$1(LiveClient, _super);
1966
2004
  function LiveClient() {
1967
- return _super.call(this) || this;
2005
+ var _this = _super.call(this) || this;
2006
+ Object.defineProperty(_this, "tokenHeaderName", {
2007
+ enumerable: true,
2008
+ configurable: true,
2009
+ writable: true,
2010
+ value: TOKEN_HEADER
2011
+ });
2012
+ return _this;
1968
2013
  }
2014
+ /**
2015
+ * 初始化客户端
2016
+ */
2017
+ Object.defineProperty(LiveClient.prototype, "init", {
2018
+ enumerable: false,
2019
+ configurable: true,
2020
+ writable: true,
2021
+ value: function (config) {
2022
+ if (config.baseUrl) {
2023
+ this.adapter.setBaseUrl(config.baseUrl);
2024
+ }
2025
+ if (config.tokenHeaderName) {
2026
+ this.tokenHeaderName = config.tokenHeaderName;
2027
+ }
2028
+ }
2029
+ });
2030
+ /**
2031
+ * 获取 Token 请求头名称
2032
+ */
2033
+ Object.defineProperty(LiveClient.prototype, "getTokenHeaderName", {
2034
+ enumerable: false,
2035
+ configurable: true,
2036
+ writable: true,
2037
+ value: function () {
2038
+ return this.tokenHeaderName;
2039
+ }
2040
+ });
1969
2041
  /**
1970
2042
  * 重写请求方法(向后兼容旧版 API)
1971
2043
  */
@@ -39,6 +39,10 @@ export declare class AxiosAdapter {
39
39
  * 获取 Axios 实例
40
40
  */
41
41
  getInstance(): AxiosInstance;
42
+ /**
43
+ * 设置 BaseURL
44
+ */
45
+ setBaseUrl(baseUrl: string): void;
42
46
  /**
43
47
  * 处理错误
44
48
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AxiosAdapter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/adapters/AxiosAdapter.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,0BAA0B,EAAgB,MAAM,OAAO,CAAC;AAElH,OAAO,EAAE,aAAa,EAAc,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAK9D;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,cAAc,CAGpB;gBAEU,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAO9C;;OAEG;IACU,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IA+BjF;;;OAGG;IACI,qBAAqB,CAC1B,WAAW,CAAC,EAAE,CACZ,MAAM,EAAE,0BAA0B,KAC/B,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC,EACrE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,KAAK,CAAC,GACjD,MAAM;IAMT;;;OAGG;IACI,sBAAsB,CAC3B,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,EACjF,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,KAAK,CAAC,GACjD,MAAM;IAMT;;OAEG;IACI,wBAAwB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQjD;;OAEG;IACI,yBAAyB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQlD;;OAEG;IACI,oBAAoB,IAAI,IAAI;IAUnC;;OAEG;IACI,WAAW,IAAI,aAAa;IAInC;;OAEG;IACH,OAAO,CAAC,WAAW;CAyBpB"}
1
+ {"version":3,"file":"AxiosAdapter.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/adapters/AxiosAdapter.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,0BAA0B,EAAgB,MAAM,OAAO,CAAC;AAElH,OAAO,EAAE,aAAa,EAAc,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAK9D;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,cAAc,CAGpB;gBAEU,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAO9C;;OAEG;IACU,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IA+BjF;;;OAGG;IACI,qBAAqB,CAC1B,WAAW,CAAC,EAAE,CACZ,MAAM,EAAE,0BAA0B,KAC/B,0BAA0B,GAAG,OAAO,CAAC,0BAA0B,CAAC,EACrE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,KAAK,CAAC,GACjD,MAAM;IAMT;;;OAGG;IACI,sBAAsB,CAC3B,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,EACjF,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,KAAK,CAAC,GACjD,MAAM;IAMT;;OAEG;IACI,wBAAwB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQjD;;OAEG;IACI,yBAAyB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQlD;;OAEG;IACI,oBAAoB,IAAI,IAAI;IAUnC;;OAEG;IACI,WAAW,IAAI,aAAa;IAInC;;OAEG;IACI,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIxC;;OAEG;IACH,OAAO,CAAC,WAAW;CAyBpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@be-link/request",
3
- "version": "1.45.1-beta.0",
3
+ "version": "1.45.1-beta.2",
4
4
  "description": "共比邻 request 库",
5
5
  "homepage": "https://github.com/snowmountain-top/be-link#readme",
6
6
  "author": "zhuifeng <yangyiboys@163.com>",