@dscli/request 0.1.0-alpha.1 → 0.1.0-alpha.3
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.
- package/README.md +6 -4
- package/dist/axios/index.d.ts.map +1 -1
- package/dist/axios/index.js +11 -2
- package/dist/axios/index.js.map +1 -1
- package/dist/core/errors.d.ts +5 -0
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +4 -0
- package/dist/core/errors.js.map +1 -1
- package/dist/core/http-error.d.ts +4 -0
- package/dist/core/http-error.d.ts.map +1 -0
- package/dist/core/http-error.js +63 -0
- package/dist/core/http-error.js.map +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +11 -8
- package/dist/core/index.js.map +1 -1
- package/dist/core/policies.d.ts +1 -0
- package/dist/core/policies.d.ts.map +1 -1
- package/dist/core/policies.js +10 -2
- package/dist/core/policies.js.map +1 -1
- package/dist/core/url.d.ts.map +1 -1
- package/dist/core/url.js +13 -2
- package/dist/core/url.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,19 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
类型安全、可扩展且兼容 SSR 的请求客户端。根入口使用标准 Fetch API;axios 与 Vue 3 通过显式子路径按需导入。
|
|
4
4
|
|
|
5
|
-
>
|
|
5
|
+
> 当前版本为 `0.1.0-alpha.3`。这是预发布版本,不应视为稳定版;请显式安装 `@alpha` 或精确版本。
|
|
6
6
|
|
|
7
7
|
## 安装
|
|
8
8
|
|
|
9
9
|
推荐显式安装 `alpha` tag,并按使用入口安装可选 peer:
|
|
10
10
|
|
|
11
|
+
发布包运行时基线为 Node >=22.18.0,不限制消费项目包管理器;仓库开发继续使用 Node 24.18 / pnpm 10.34。
|
|
12
|
+
|
|
11
13
|
```sh
|
|
12
14
|
pnpm add @dscli/request@alpha
|
|
13
15
|
pnpm add axios # 使用 @dscli/request/axios 时
|
|
14
16
|
pnpm add vue # 使用 @dscli/request/vue 时
|
|
15
17
|
```
|
|
16
18
|
|
|
17
|
-
需要锁定候选时可安装精确版本:`pnpm add @dscli/request@0.1.0-alpha.
|
|
19
|
+
需要锁定候选时可安装精确版本:`pnpm add @dscli/request@0.1.0-alpha.3`。本仓库内联调仍可使用 `@dscli/request@workspace:*`。
|
|
18
20
|
|
|
19
21
|
## 用法
|
|
20
22
|
|
|
@@ -35,7 +37,7 @@ try {
|
|
|
35
37
|
}
|
|
36
38
|
```
|
|
37
39
|
|
|
38
|
-
|
|
40
|
+
**仅浏览器单实例应用的便捷路径**:可在启动时设置默认客户端,业务模块直接导入 HTTP 方法。SSR、测试隔离和多应用优先显式创建实例并注入:
|
|
39
41
|
|
|
40
42
|
```ts
|
|
41
43
|
import { configureRequest, Get, Post } from '@dscli/request'
|
|
@@ -90,7 +92,7 @@ const request = createRequest({
|
|
|
90
92
|
5xx 重试;取消、配置错误、解析错误及其他 HTTP 错误默认不重试。写请求需要通过
|
|
91
93
|
`retryable` 明确选择。退避延迟使用指数增长,并遵守请求的 `AbortSignal`。
|
|
92
94
|
|
|
93
|
-
`dedupe: true` 只在同一个客户端实例内去重 `GET` 和 `HEAD`,重复键由方法、URL、query
|
|
95
|
+
`dedupe: true` 只在同一个客户端实例内去重 `GET` 和 `HEAD`,重复键由方法、URL、query、有效 headers(默认值与 onRequest 合并后规范化)和
|
|
94
96
|
`responseType` 组成,新请求会取消旧请求。可以通过 `{ methods, key }` 自定义允许的方法和去重键;写请求和文件上传
|
|
95
97
|
默认不会去重。
|
|
96
98
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/axios/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,cAAc,EAGf,MAAM,kBAAkB,CAAA;AAEzB,sCAAsC;AACtC,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;CAC5E;AAED,2DAA2D;AAC3D,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAA;AAErF,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,iBAAiB,CAAA;CACjC;AAED,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAA;IACP,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mDAAmD;IACnD,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,yBAA0B,SAAQ,IAAI,CACrD,oBAAoB,EACpB,OAAO,GAAG,OAAO,GAAG,QAAQ,CAC7B;IACC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AA2ED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,EAChB,QAAQ,GAAE,yBAA8B,GACvC,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/axios/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,oBAAoB,EACpB,cAAc,EAGf,MAAM,kBAAkB,CAAA;AAEzB,sCAAsC;AACtC,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;CAC5E;AAED,2DAA2D;AAC3D,MAAM,MAAM,iBAAiB,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAA;AAErF,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;IAChC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,iBAAiB,CAAA;CACjC;AAED,MAAM,WAAW,aAAa,CAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,CAAA;IACP,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mDAAmD;IACnD,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,yBAA0B,SAAQ,IAAI,CACrD,oBAAoB,EACpB,OAAO,GAAG,OAAO,GAAG,QAAQ,CAC7B;IACC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AA2ED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,EAChB,QAAQ,GAAE,yBAA8B,GACvC,aAAa,CAsGf"}
|
package/dist/axios/index.js
CHANGED
|
@@ -102,7 +102,9 @@ export function createAxiosRequest(axios, defaults = {}) {
|
|
|
102
102
|
throw new RequestError('http', `请求失败:${response.status}`, {
|
|
103
103
|
url,
|
|
104
104
|
status: response.status,
|
|
105
|
-
statusText: response.statusText
|
|
105
|
+
statusText: response.statusText,
|
|
106
|
+
data: response.data,
|
|
107
|
+
headers: normalizeResponseHeaders(response.headers)
|
|
106
108
|
});
|
|
107
109
|
}
|
|
108
110
|
return {
|
|
@@ -121,6 +123,8 @@ export function createAxiosRequest(axios, defaults = {}) {
|
|
|
121
123
|
url,
|
|
122
124
|
status: axiosError.response.status,
|
|
123
125
|
statusText: axiosError.response.statusText,
|
|
126
|
+
data: axiosError.response.data,
|
|
127
|
+
headers: normalizeResponseHeaders(axiosError.response.headers),
|
|
124
128
|
cause
|
|
125
129
|
});
|
|
126
130
|
}
|
|
@@ -134,7 +138,12 @@ export function createAxiosRequest(axios, defaults = {}) {
|
|
|
134
138
|
}
|
|
135
139
|
};
|
|
136
140
|
const inFlight = new Map();
|
|
137
|
-
const requestResponse = (url, options = {}) => executeWithPolicies(url, options, {
|
|
141
|
+
const requestResponse = (url, options = {}) => executeWithPolicies(url, options, {
|
|
142
|
+
headers: defaults.headers,
|
|
143
|
+
hooks: defaults.hooks,
|
|
144
|
+
retry: defaults.retry,
|
|
145
|
+
dedupe: defaults.dedupe
|
|
146
|
+
}, executeRequestOnce, inFlight);
|
|
138
147
|
const request = async (url, options = {}) => {
|
|
139
148
|
const result = await requestResponse(url, options);
|
|
140
149
|
return result.data;
|
package/dist/axios/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/axios/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/axios/index.ts"],"names":[],"mappings":"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"}
|
package/dist/core/errors.d.ts
CHANGED
|
@@ -4,6 +4,9 @@ export interface RequestErrorOptions {
|
|
|
4
4
|
url?: string;
|
|
5
5
|
status?: number;
|
|
6
6
|
statusText?: string;
|
|
7
|
+
/** HTTP 错误响应体;Fetch 超过读取上限时为 undefined。 */
|
|
8
|
+
data?: unknown;
|
|
9
|
+
headers?: HeadersInit;
|
|
7
10
|
cause?: unknown;
|
|
8
11
|
}
|
|
9
12
|
/**
|
|
@@ -15,6 +18,8 @@ export declare class RequestError extends Error {
|
|
|
15
18
|
readonly url?: string;
|
|
16
19
|
readonly status?: number;
|
|
17
20
|
readonly statusText?: string;
|
|
21
|
+
readonly data?: unknown;
|
|
22
|
+
readonly headers?: Headers;
|
|
18
23
|
constructor(kind: RequestErrorKind, message: string, options?: RequestErrorOptions);
|
|
19
24
|
}
|
|
20
25
|
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAA;AAEnG,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAA;AAEnG,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAA;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;gBAEd,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,mBAAwB;CAUvF"}
|
package/dist/core/errors.js
CHANGED
|
@@ -7,6 +7,8 @@ export class RequestError extends Error {
|
|
|
7
7
|
url;
|
|
8
8
|
status;
|
|
9
9
|
statusText;
|
|
10
|
+
data;
|
|
11
|
+
headers;
|
|
10
12
|
constructor(kind, message, options = {}) {
|
|
11
13
|
super(message, options.cause === undefined ? undefined : { cause: options.cause });
|
|
12
14
|
this.name = 'RequestError';
|
|
@@ -14,6 +16,8 @@ export class RequestError extends Error {
|
|
|
14
16
|
this.url = options.url;
|
|
15
17
|
this.status = options.status;
|
|
16
18
|
this.statusText = options.statusText;
|
|
19
|
+
this.data = options.data;
|
|
20
|
+
this.headers = options.headers === undefined ? undefined : new Headers(options.headers);
|
|
17
21
|
}
|
|
18
22
|
}
|
|
19
23
|
//# sourceMappingURL=errors.js.map
|
package/dist/core/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/core/errors.ts"],"names":[],"mappings":"AAaA;;;GAGG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IAC5B,IAAI,CAAkB;IACtB,GAAG,CAAS;IACZ,MAAM,CAAS;IACf,UAAU,CAAS;IACnB,IAAI,CAAU;IACd,OAAO,CAAU;IAE1B,YAAY,IAAsB,EAAE,OAAe,EAAE,UAA+B,EAAE;QACpF,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QAClF,IAAI,CAAC,IAAI,GAAG,cAAc,CAAA;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;QACtB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC5B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;QACpC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACzF,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-error.d.ts","sourceRoot":"","sources":["../../src/core/http-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAyC1C,kDAAkD;AAClD,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,YAAY,CAAC,CAgBvB"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { RequestError } from './errors.js';
|
|
2
|
+
/** 错误页也可能是大文件或无限响应;最多保留 64 KiB,不缓存无界错误体。 */
|
|
3
|
+
const maxErrorBodyBytes = 64 * 1024;
|
|
4
|
+
async function readErrorData(response) {
|
|
5
|
+
if (!response.body)
|
|
6
|
+
return undefined;
|
|
7
|
+
const reader = response.body.getReader();
|
|
8
|
+
const chunks = [];
|
|
9
|
+
let size = 0;
|
|
10
|
+
try {
|
|
11
|
+
while (true) {
|
|
12
|
+
const { done, value } = await reader.read();
|
|
13
|
+
if (done)
|
|
14
|
+
break;
|
|
15
|
+
size += value.byteLength;
|
|
16
|
+
if (size > maxErrorBodyBytes) {
|
|
17
|
+
// 不等待不可信流的 cancel 回调,防止错误处理本身永久挂起。
|
|
18
|
+
void reader.cancel().catch(() => undefined);
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
chunks.push(value);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
finally {
|
|
25
|
+
reader.releaseLock();
|
|
26
|
+
}
|
|
27
|
+
if (size === 0)
|
|
28
|
+
return undefined;
|
|
29
|
+
const bytes = new Uint8Array(size);
|
|
30
|
+
let offset = 0;
|
|
31
|
+
for (const chunk of chunks) {
|
|
32
|
+
bytes.set(chunk, offset);
|
|
33
|
+
offset += chunk.byteLength;
|
|
34
|
+
}
|
|
35
|
+
const text = new TextDecoder().decode(bytes);
|
|
36
|
+
try {
|
|
37
|
+
return JSON.parse(text);
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
// 错误页的非法 JSON 或纯文本仍是 HTTP 错误,不覆盖其状态。
|
|
41
|
+
return text;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/** 保留 HTTP 错误的可诊断元数据;读取失败保留 cause,取消和超时交由外层归类。 */
|
|
45
|
+
export async function createHttpResponseError(response, url) {
|
|
46
|
+
let data;
|
|
47
|
+
let cause;
|
|
48
|
+
try {
|
|
49
|
+
data = await readErrorData(response);
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
cause = error;
|
|
53
|
+
}
|
|
54
|
+
return new RequestError('http', `请求失败:${response.status} ${response.statusText}`.trim(), {
|
|
55
|
+
url,
|
|
56
|
+
status: response.status,
|
|
57
|
+
statusText: response.statusText,
|
|
58
|
+
data,
|
|
59
|
+
headers: response.headers,
|
|
60
|
+
cause
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=http-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-error.js","sourceRoot":"","sources":["../../src/core/http-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,4CAA4C;AAC5C,MAAM,iBAAiB,GAAG,EAAE,GAAG,IAAI,CAAA;AAEnC,KAAK,UAAU,aAAa,CAAC,QAAkB;IAC7C,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,OAAO,SAAS,CAAA;IACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;IACxC,MAAM,MAAM,GAAiB,EAAE,CAAA;IAC/B,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YAC3C,IAAI,IAAI;gBAAE,MAAK;YACf,IAAI,IAAI,KAAK,CAAC,UAAU,CAAA;YACxB,IAAI,IAAI,GAAG,iBAAiB,EAAE,CAAC;gBAC7B,mCAAmC;gBACnC,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;gBAC3C,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,WAAW,EAAE,CAAA;IACtB,CAAC;IACD,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IAChC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;IAClC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACxB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAA;IAC5B,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAA;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;QACrC,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED,kDAAkD;AAClD,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAkB,EAClB,GAAW;IAEX,IAAI,IAAa,CAAA;IACjB,IAAI,KAAc,CAAA;IAClB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,GAAG,KAAK,CAAA;IACf,CAAC;IACD,OAAO,IAAI,YAAY,CAAC,MAAM,EAAE,QAAQ,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;QACvF,GAAG;QACH,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,IAAI;QACJ,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,KAAK;KACN,CAAC,CAAA;AACJ,CAAC"}
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,gBAAgB,EAEhB,aAAa,EACb,oBAAoB,EACpB,cAAc,EAGf,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACxE,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,YAAY,CAAA;AA8HnB;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,GAAE,oBAAyB,GAAG,aAAa,CAoFhF;AAID,4CAA4C;AAC5C,wBAAgB,uBAAuB,IAAI,aAAa,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAMnE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,oBAAyB,GAAG,aAAa,CAIlF;AAED;;;GAGG;AACH,wBAAgB,GAAG,CAAC,CAAC,GAAG,OAAO,EAC7B,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAM,GAC3C,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,kCAAkC;AAClC,wBAAgB,IAAI,CAAC,CAAC,GAAG,OAAO,EAC9B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,OAAO,EACd,OAAO,GAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAM,GAC7D,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,iCAAiC;AACjC,wBAAgB,GAAG,CAAC,CAAC,GAAG,OAAO,EAC7B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,OAAO,EACd,OAAO,GAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAM,GAC7D,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,mCAAmC;AACnC,wBAAgB,KAAK,CAAC,CAAC,GAAG,OAAO,EAC/B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,OAAO,EACd,OAAO,GAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAM,GAC7D,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,8BAA8B;AAC9B,wBAAgB,MAAM,CAAC,CAAC,GAAG,OAAO,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAM,GAC3C,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,qDAAqD;AACrD,eAAO,MAAM,GAAG,eAAS,CAAA;AAEzB;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,CAAC,CAAC,CAG9F"}
|
package/dist/core/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { RequestError } from './errors.js';
|
|
2
|
+
import { createHttpResponseError } from './http-error.js';
|
|
2
3
|
import { isFormDataBody } from './body.js';
|
|
3
4
|
import { executeRequest as executeWithPolicies } from './policies.js';
|
|
4
5
|
import { appendQuery, normalizeTimeout, resolveRequestUrl } from './url.js';
|
|
@@ -132,11 +133,7 @@ export function createRequest(defaults = {}) {
|
|
|
132
133
|
signal: abortContext.signal
|
|
133
134
|
});
|
|
134
135
|
if (!response.ok) {
|
|
135
|
-
throw
|
|
136
|
-
url: resolvedUrl,
|
|
137
|
-
status: response.status,
|
|
138
|
-
statusText: response.statusText
|
|
139
|
-
});
|
|
136
|
+
throw await createHttpResponseError(response, resolvedUrl);
|
|
140
137
|
}
|
|
141
138
|
return {
|
|
142
139
|
data: await parseResponse(response, options.responseType ?? 'json'),
|
|
@@ -146,14 +143,15 @@ export function createRequest(defaults = {}) {
|
|
|
146
143
|
};
|
|
147
144
|
}
|
|
148
145
|
catch (cause) {
|
|
149
|
-
|
|
150
|
-
throw cause;
|
|
146
|
+
// body 读取也会被 AbortSignal 中断;先检查取消来源,避免被内层 parse/http 包装掩盖。
|
|
151
147
|
if (abortContext.timedOut()) {
|
|
152
148
|
throw new RequestError('timeout', `请求超时:${timeout}ms`, { url: resolvedUrl, cause });
|
|
153
149
|
}
|
|
154
150
|
if (options.signal?.aborted || abortContext.signal?.aborted) {
|
|
155
151
|
throw new RequestError('abort', '请求已被取消', { url: resolvedUrl, cause });
|
|
156
152
|
}
|
|
153
|
+
if (cause instanceof RequestError)
|
|
154
|
+
throw cause;
|
|
157
155
|
throw new RequestError('network', '请求网络失败', { url: resolvedUrl, cause });
|
|
158
156
|
}
|
|
159
157
|
finally {
|
|
@@ -161,7 +159,12 @@ export function createRequest(defaults = {}) {
|
|
|
161
159
|
}
|
|
162
160
|
};
|
|
163
161
|
const inFlight = new Map();
|
|
164
|
-
const requestResponse = (url, options = {}) => executeWithPolicies(url, options, {
|
|
162
|
+
const requestResponse = (url, options = {}) => executeWithPolicies(url, options, {
|
|
163
|
+
headers: defaults.headers,
|
|
164
|
+
hooks: defaults.hooks,
|
|
165
|
+
retry: defaults.retry,
|
|
166
|
+
dedupe: defaults.dedupe
|
|
167
|
+
}, executeRequestOnce, inFlight);
|
|
165
168
|
const request = async (url, options = {}) => {
|
|
166
169
|
const result = await requestResponse(url, options);
|
|
167
170
|
return result.data;
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,cAAc,IAAI,mBAAmB,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAW3E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AA2B1C,SAAS,kBAAkB,CACzB,MAA+B,EAC/B,OAA2B;IAE3B,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,CAAA;IAC/E,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;IACxC,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAC5B,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9D,IAAI,MAAM,EAAE,OAAO;QAAE,eAAe,EAAE,CAAA;;QACjC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAEvE,MAAM,KAAK,GAAG,OAAO;QACnB,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE;YACd,gBAAgB,GAAG,IAAI,CAAA;YACvB,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;QACrC,CAAC,EAAE,OAAO,CAAC;QACb,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB;QAChC,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,KAAK;gBAAE,YAAY,CAAC,KAAK,CAAC,CAAA;YAC9B,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,eAAe,CAAC,CAAA;QACvD,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,QAAyC;IACvE,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAA;IAC7B,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QAC3C,MAAM,IAAI,YAAY,CACpB,eAAe,EACf,6CAA6C,CAC9C,CAAA;IACH,CAAC;IACD,OAAO,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AAC1C,CAAC;AAED,SAAS,YAAY,CACnB,cAAuC,EACvC,OAAgC;IAEhC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC,CAAA;IAC1C,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,CAAA;IAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;QAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACvE,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,UAAU,CAAC,OAAuB,EAAE,OAAgB;IAC3D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7D,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAA;IAC/D,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,oDAAoD;QACpD,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;QAChE,OAAO,OAAO,CAAC,IAAI,CAAA;IACrB,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IAEhD,IAAI,UAA8B,CAAA;IAClC,IAAI,CAAC;QACH,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;IAClE,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAA;IAC3D,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAA;IACjF,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,KAAK,UAAU,aAAa,CAAI,QAAkB,EAAE,YAAiC;IACnF,IAAI,YAAY,KAAK,UAAU;QAAE,OAAO,QAAa,CAAA;IACrD,IACE,YAAY,KAAK,MAAM;QACvB,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG;YACtB,QAAQ,CAAC,MAAM,KAAK,GAAG;YACvB,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,GAAG,CAAC,EACjD,CAAC;QACD,OAAO,SAAc,CAAA;IACvB,CAAC;IAED,IAAI,CAAC;QACH,QAAQ,YAAY,EAAE,CAAC;YACrB,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,6DAA6D;gBAC7D,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;gBAClC,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAM,CAAA;YAChE,CAAC;YACD,KAAK,MAAM;gBACT,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAA;YACrC,KAAK,MAAM;gBACT,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAA;YACrC,KAAK,aAAa;gBAChB,OAAO,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAM,CAAA;YAC5C,KAAK,UAAU;gBACb,OAAO,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAM,CAAA;YACzC;gBACE,OAAO,QAAa,CAAA;QACxB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;IAC7D,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,OAAiC,EAAE,MAAgC;IAC9F,OAAO,CACL,GAAW,EACX,IAAc,EACd,UAA4D,EAAE,EAC9D,EAAE,CAAC,OAAO,CAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAA;AACpD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,WAAiC,EAAE;IAC/D,MAAM,cAAc,GAAG,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAEzD,MAAM,kBAAkB,GAAG,KAAK,EAC9B,GAAW,EACX,UAA0B,EAAE,EACC,EAAE;QAC/B,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,CAAA;QACnE,MAAM,WAAW,GAAG,WAAW,CAAC,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;QACxF,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE;gBAC3C,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;aAC7B,CAAC,CAAA;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACzC,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAChE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;gBACzE,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE;gBAC/C,OAAO;gBACP,IAAI;gBACJ,MAAM,EAAE,YAAY,CAAC,MAAM;aAC5B,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
|
package/dist/core/policies.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { RequestDedupeOptions, RequestHooks, RequestOptions, RequestRespons
|
|
|
2
2
|
/** 适配器执行一次请求所需的最小函数。策略层不关心底层是 Fetch 还是 Axios。 */
|
|
3
3
|
export type RequestExecutor = <T>(url: string, options: RequestOptions) => Promise<RequestResponse<T>>;
|
|
4
4
|
export interface RequestPolicyOptions {
|
|
5
|
+
headers?: HeadersInit;
|
|
5
6
|
hooks?: RequestHooks;
|
|
6
7
|
retry?: false | RequestRetryOptions;
|
|
7
8
|
dedupe?: boolean | RequestDedupeOptions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../../src/core/policies.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EAGpB,YAAY,EAEZ,cAAc,EACd,eAAe,EAEf,mBAAmB,EACpB,MAAM,YAAY,CAAA;AAEnB,iDAAiD;AACjD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,EAC9B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,cAAc,KACpB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;AAEhC,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,GAAG,mBAAmB,CAAA;IACnC,MAAM,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAA;CACxC;AAED,UAAU,WAAW;IACnB,UAAU,EAAE,eAAe,CAAA;CAC5B;
|
|
1
|
+
{"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../../src/core/policies.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EAGpB,YAAY,EAEZ,cAAc,EACd,eAAe,EAEf,mBAAmB,EACpB,MAAM,YAAY,CAAA;AAEnB,iDAAiD;AACjD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,EAC9B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,cAAc,KACpB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;AAEhC,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,GAAG,mBAAmB,CAAA;IACnC,MAAM,CAAC,EAAE,OAAO,GAAG,oBAAoB,CAAA;CACxC;AAED,UAAU,WAAW;IACnB,UAAU,EAAE,eAAe,CAAA;CAC5B;AA2KD,+CAA+C;AAC/C,wBAAgB,cAAc,CAAC,CAAC,EAC9B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,GACjC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CA+B7B"}
|
package/dist/core/policies.js
CHANGED
|
@@ -28,7 +28,15 @@ function stableQuery(options) {
|
|
|
28
28
|
function getDedupeKey(url, options, config) {
|
|
29
29
|
if (config.key)
|
|
30
30
|
return config.key(url, options);
|
|
31
|
-
|
|
31
|
+
// Headers 统一大小写并合并重复值,再排序;仅在实例内存中比较,不记录敏感头到日志。
|
|
32
|
+
const headers = [...new Headers(options.headers).entries()].sort(([left], [right]) => left.localeCompare(right));
|
|
33
|
+
return JSON.stringify([
|
|
34
|
+
(options.method ?? 'GET').toUpperCase(),
|
|
35
|
+
url,
|
|
36
|
+
stableQuery(options),
|
|
37
|
+
options.responseType ?? 'json',
|
|
38
|
+
headers
|
|
39
|
+
]);
|
|
32
40
|
}
|
|
33
41
|
function getDedupeConfig(dedupe, options) {
|
|
34
42
|
if (!dedupe)
|
|
@@ -105,7 +113,7 @@ async function executeWithPolicies(url, initialOptions, policies, execute, prepa
|
|
|
105
113
|
let attempt = 0;
|
|
106
114
|
while (true) {
|
|
107
115
|
// 每次尝试重新应用 hook,避免沿用上次尝试补充的 token 或其他临时选项。
|
|
108
|
-
let options = initialOptions;
|
|
116
|
+
let options = mergeOptions({ headers: policies.headers }, initialOptions);
|
|
109
117
|
const hookContext = { url, options, attempt };
|
|
110
118
|
const patch = await policies.hooks?.onRequest?.(hookContext);
|
|
111
119
|
if (patch)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policies.js","sourceRoot":"","sources":["../../src/core/policies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"policies.js","sourceRoot":"","sources":["../../src/core/policies.ts"],"names":[],"mappings":"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"}
|
package/dist/core/url.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../src/core/url.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,0CAA0C;AAC1C,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAMhF;AAED,mDAAmD;AACnD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../src/core/url.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,0CAA0C;AAC1C,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAMhF;AAED,mDAAmD;AACnD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAqBlF;AAED,8DAA8D;AAC9D,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,CAqBhF"}
|
package/dist/core/url.js
CHANGED
|
@@ -18,8 +18,19 @@ export function resolveRequestUrl(url, baseUrl) {
|
|
|
18
18
|
try {
|
|
19
19
|
return new URL(url, baseUrl).toString();
|
|
20
20
|
}
|
|
21
|
-
catch
|
|
22
|
-
|
|
21
|
+
catch {
|
|
22
|
+
// 浏览器应用经常使用 `/api/v1` 作为 Vite 代理前缀。它不是标准 URL 基址,
|
|
23
|
+
// 但可以交给浏览器 fetch 继续解析,因此这里按路径前缀拼接;Node/SSR
|
|
24
|
+
// 消费方仍应传入绝对 baseUrl,避免把相对地址交给 Node fetch。
|
|
25
|
+
try {
|
|
26
|
+
new URL(url);
|
|
27
|
+
return url;
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
const normalizedBase = baseUrl.replace(/\/+$/, '');
|
|
31
|
+
const normalizedUrl = url.replace(/^\/+/, '');
|
|
32
|
+
return normalizedBase ? `${normalizedBase}/${normalizedUrl}` : `/${normalizedUrl}`;
|
|
33
|
+
}
|
|
23
34
|
}
|
|
24
35
|
}
|
|
25
36
|
/** 在保留现有 query 与 hash 的前提下追加 query;null 和 undefined 值会被忽略。 */
|
package/dist/core/url.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"url.js","sourceRoot":"","sources":["../../src/core/url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG1C,0CAA0C;AAC1C,MAAM,UAAU,gBAAgB,CAAC,OAA2B;IAC1D,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAA;IAC/D,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,iBAAiB,CAAC,GAAW,EAAE,OAA2B;IACxE,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,YAAY,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;IACxD,CAAC;IACD,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAA;IAExB,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;IACzC,CAAC;IAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"url.js","sourceRoot":"","sources":["../../src/core/url.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dscli/request",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.3",
|
|
4
4
|
"description": "类型安全、可扩展且兼容 SSR 的 fetch 请求客户端",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
],
|
|
47
47
|
"sideEffects": false,
|
|
48
48
|
"engines": {
|
|
49
|
-
"node": "
|
|
49
|
+
"node": ">=22.18.0"
|
|
50
50
|
},
|
|
51
51
|
"keywords": [
|
|
52
52
|
"request",
|