mphttpx 2.4.0 → 2.6.0-beta.1
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 +8 -31
- package/dist/cjs/fetchP.js +4 -12
- package/dist/cjs/index.js +5 -17
- package/dist/esm/fetchP.js +4 -5
- package/dist/esm/index.js +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/mphttpx.cjs.js +235 -1452
- package/dist/mphttpx.cjs.min.js +1 -1
- package/dist/mphttpx.esm.js +234 -1448
- package/dist/mphttpx.esm.min.js +1 -1
- package/dist/mphttpx.umd.js +5516 -0
- package/dist/mphttpx.umd.min.js +1 -0
- package/package.json +7 -6
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# MPHTTPX
|
|
2
2
|
|
|
3
|
-
小程序中浏览器网络 API 的完整 polyfill 实现,一次安装即可使用 `fetch`、`XMLHttpRequest`、`WebSocket`
|
|
3
|
+
小程序中浏览器网络 API 的完整 polyfill 实现,一次安装即可使用 `fetch`、`XMLHttpRequest`、`WebSocket` 等符合 W3C 标准的应用程序编程接口。
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -33,11 +33,11 @@ fetch("https://api.example.com/data")
|
|
|
33
33
|
| `XMLHttpRequest` | miniprogram-xmlhttprequest-shim |
|
|
34
34
|
| `WebSocket` | miniprogram-websocket |
|
|
35
35
|
|
|
36
|
-
每个 API 都有对应的 `P` 后缀版本(如 `fetchP`、`BlobP`、`TextEncoderP`),始终返回 polyfill
|
|
36
|
+
每个 API 都有对应的 `P` 后缀版本(如 `fetchP`、`BlobP`、`TextEncoderP`),始终返回 polyfill 实现,请按需使用。
|
|
37
37
|
|
|
38
38
|
```javascript
|
|
39
|
-
import { fetch, Blob } from "mphttpx";
|
|
40
|
-
import { fetchP, BlobP } from "mphttpx";
|
|
39
|
+
import { fetch, Blob } from "mphttpx"; // 优先返回全局对象,不存在时返回 polyfill
|
|
40
|
+
import { fetchP, BlobP } from "mphttpx"; // 始终返回 polyfill 实现
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
## 依赖库
|
|
@@ -45,10 +45,10 @@ import { fetchP, BlobP } from "mphttpx"; // 始终返回 polyfill 实现
|
|
|
45
45
|
| 库 | 提供的 API |
|
|
46
46
|
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
47
47
|
| [fetch-xhr-shim](https://www.npmjs.com/package/fetch-xhr-shim) | fetch、Headers、Request、Response、<br>Blob、File、FileReader、<br>URLSearchParams、FormData、<br>AbortController、AbortSignal、<br>EventTarget、Event、CustomEvent、<br>TextEncoder、TextDecoder |
|
|
48
|
-
| [miniprogram-xmlhttprequest-shim](https://www.npmjs.com/package/miniprogram-xmlhttprequest-shim) | XMLHttpRequest
|
|
48
|
+
| [miniprogram-xmlhttprequest-shim](https://www.npmjs.com/package/miniprogram-xmlhttprequest-shim) | XMLHttpRequest |
|
|
49
49
|
| [miniprogram-websocket](https://www.npmjs.com/package/miniprogram-websocket) | WebSocket |
|
|
50
50
|
|
|
51
|
-
各 API
|
|
51
|
+
各 API 的详细文档及兼容性说明请参阅对应库的自述文档。
|
|
52
52
|
|
|
53
53
|
## 兼容性
|
|
54
54
|
|
|
@@ -56,34 +56,11 @@ import { fetchP, BlobP } from "mphttpx"; // 始终返回 polyfill 实现
|
|
|
56
56
|
| :---: | :----: | :---: | :---: | :---: | :---: | :---: | :----: |
|
|
57
57
|
| ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
58
58
|
|
|
59
|
-
在 Chrome、Firefox、Edge、Safari
|
|
60
|
-
|
|
61
|
-
## 自动导入
|
|
62
|
-
|
|
63
|
-
配合 [unplugin-auto-import](https://www.npmjs.com/package/unplugin-auto-import) 使用:
|
|
64
|
-
|
|
65
|
-
```javascript
|
|
66
|
-
AutoImport({
|
|
67
|
-
imports: [{
|
|
68
|
-
"mphttpx": [
|
|
69
|
-
"fetch", "Headers", "Request", "Response",
|
|
70
|
-
"Blob", "File", "FileReader",
|
|
71
|
-
"URLSearchParams", "FormData",
|
|
72
|
-
"AbortController", "AbortSignal",
|
|
73
|
-
"EventTarget", "Event", "CustomEvent",
|
|
74
|
-
"TextEncoder", "TextDecoder",
|
|
75
|
-
|
|
76
|
-
"XMLHttpRequest", // mini-programs
|
|
77
|
-
"WebSocket", // mini-programs
|
|
78
|
-
],
|
|
79
|
-
}],
|
|
80
|
-
});
|
|
81
|
-
```
|
|
59
|
+
在 Chrome、Firefox、Edge、Safari 等浏览器中,所有导出均直接使用浏览器原生实现,无性能损耗。
|
|
82
60
|
|
|
83
61
|
## 注意事项
|
|
84
62
|
|
|
85
|
-
-
|
|
86
|
-
- **支付宝小程序**:`globalThis`、`window`、`XMLHttpRequest` 等为保留字,导入时建议重命名:`import { XMLHttpRequest as myXHR } from "mphttpx";`。
|
|
63
|
+
- **支付宝小程序**:`fetch`、`XMLHttpRequest`、`WebSocket` 等为保留字,导入时建议重命名:`import { fetch as fetchPolyfill } from "mphttpx";`。
|
|
87
64
|
|
|
88
65
|
## 开源协议
|
|
89
66
|
|
package/dist/cjs/fetchP.js
CHANGED
|
@@ -3,20 +3,12 @@
|
|
|
3
3
|
var miniprogramXmlhttprequestShim = require('miniprogram-xmlhttprequest-shim');
|
|
4
4
|
var fetchXhrShim = require('fetch-xhr-shim');
|
|
5
5
|
|
|
6
|
-
const fetches =
|
|
6
|
+
const fetches = /*#__PURE__*/ function () {
|
|
7
7
|
fetchXhrShim.setXMLHttpRequestClass(miniprogramXmlhttprequestShim.XMLHttpRequest);
|
|
8
8
|
return [fetchXhrShim.fetch, fetchXhrShim.fetchP];
|
|
9
|
-
}
|
|
10
|
-
const fetchE = fetches[0];
|
|
11
|
-
const fetchPolyfill = fetches[1];
|
|
9
|
+
}();
|
|
10
|
+
const fetchE = /*#__PURE__*/ function () { return fetches[0]; }();
|
|
11
|
+
const fetchPolyfill = /*#__PURE__*/ function () { return fetches[1]; }();
|
|
12
12
|
|
|
13
|
-
Object.defineProperty(exports, "setXMLHttpRequest", {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
get: function () { return fetchXhrShim.setXMLHttpRequestClass; }
|
|
16
|
-
});
|
|
17
|
-
Object.defineProperty(exports, "setXMLHttpRequestClass", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
get: function () { return fetchXhrShim.setXMLHttpRequestClass; }
|
|
20
|
-
});
|
|
21
13
|
exports.fetch = fetchE;
|
|
22
14
|
exports.fetchP = fetchPolyfill;
|
package/dist/cjs/index.js
CHANGED
|
@@ -148,9 +148,9 @@ Object.defineProperty(exports, "setReadableStreamClass", {
|
|
|
148
148
|
enumerable: true,
|
|
149
149
|
get: function () { return fetchXhrShim.setReadableStreamClass; }
|
|
150
150
|
});
|
|
151
|
-
Object.defineProperty(exports, "
|
|
151
|
+
Object.defineProperty(exports, "setTextMode", {
|
|
152
152
|
enumerable: true,
|
|
153
|
-
get: function () { return fetchXhrShim.
|
|
153
|
+
get: function () { return fetchXhrShim.setTextMode; }
|
|
154
154
|
});
|
|
155
155
|
Object.defineProperty(exports, "setXMLHttpRequestClass", {
|
|
156
156
|
enumerable: true,
|
|
@@ -162,10 +162,6 @@ Object.defineProperty(exports, "getPlatform", {
|
|
|
162
162
|
enumerable: true,
|
|
163
163
|
get: function () { return miniprogramPlatform.getPlatform; }
|
|
164
164
|
});
|
|
165
|
-
Object.defineProperty(exports, "Cookie", {
|
|
166
|
-
enumerable: true,
|
|
167
|
-
get: function () { return miniprogramXmlhttprequestShim.Cookie; }
|
|
168
|
-
});
|
|
169
165
|
Object.defineProperty(exports, "XMLHttpRequest", {
|
|
170
166
|
enumerable: true,
|
|
171
167
|
get: function () { return miniprogramXmlhttprequestShim.XMLHttpRequest; }
|
|
@@ -174,17 +170,13 @@ Object.defineProperty(exports, "XMLHttpRequestP", {
|
|
|
174
170
|
enumerable: true,
|
|
175
171
|
get: function () { return miniprogramXmlhttprequestShim.XMLHttpRequestP; }
|
|
176
172
|
});
|
|
177
|
-
Object.defineProperty(exports, "
|
|
178
|
-
enumerable: true,
|
|
179
|
-
get: function () { return miniprogramXmlhttprequestShim.enableCookie; }
|
|
180
|
-
});
|
|
181
|
-
Object.defineProperty(exports, "setRequest", {
|
|
173
|
+
Object.defineProperty(exports, "setRequestFunc", {
|
|
182
174
|
enumerable: true,
|
|
183
175
|
get: function () { return miniprogramXmlhttprequestShim.setRequestFunc; }
|
|
184
176
|
});
|
|
185
|
-
Object.defineProperty(exports, "
|
|
177
|
+
Object.defineProperty(exports, "useCookie", {
|
|
186
178
|
enumerable: true,
|
|
187
|
-
get: function () { return miniprogramXmlhttprequestShim.
|
|
179
|
+
get: function () { return miniprogramXmlhttprequestShim.useCookie; }
|
|
188
180
|
});
|
|
189
181
|
Object.defineProperty(exports, "WebSocket", {
|
|
190
182
|
enumerable: true,
|
|
@@ -194,10 +186,6 @@ Object.defineProperty(exports, "WebSocketP", {
|
|
|
194
186
|
enumerable: true,
|
|
195
187
|
get: function () { return miniprogramWebsocket.WebSocketP; }
|
|
196
188
|
});
|
|
197
|
-
Object.defineProperty(exports, "setConnectSocket", {
|
|
198
|
-
enumerable: true,
|
|
199
|
-
get: function () { return miniprogramWebsocket.setConnectSocketFunc; }
|
|
200
|
-
});
|
|
201
189
|
Object.defineProperty(exports, "setConnectSocketFunc", {
|
|
202
190
|
enumerable: true,
|
|
203
191
|
get: function () { return miniprogramWebsocket.setConnectSocketFunc; }
|
package/dist/esm/fetchP.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { XMLHttpRequest } from 'miniprogram-xmlhttprequest-shim';
|
|
2
2
|
import { setXMLHttpRequestClass, fetch, fetchP } from 'fetch-xhr-shim';
|
|
3
|
-
export { setXMLHttpRequestClass as setXMLHttpRequest, setXMLHttpRequestClass } from 'fetch-xhr-shim';
|
|
4
3
|
|
|
5
|
-
const fetches =
|
|
4
|
+
const fetches = /*#__PURE__*/ function () {
|
|
6
5
|
setXMLHttpRequestClass(XMLHttpRequest);
|
|
7
6
|
return [fetch, fetchP];
|
|
8
|
-
}
|
|
9
|
-
const fetchE = fetches[0];
|
|
10
|
-
const fetchPolyfill = fetches[1];
|
|
7
|
+
}();
|
|
8
|
+
const fetchE = /*#__PURE__*/ function () { return fetches[0]; }();
|
|
9
|
+
const fetchPolyfill = /*#__PURE__*/ function () { return fetches[1]; }();
|
|
11
10
|
|
|
12
11
|
export { fetchE as fetch, fetchPolyfill as fetchP };
|
package/dist/esm/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { AbortController, AbortControllerP, AbortSignal, AbortSignalP, Blob, BlobP, CustomEvent, CustomEventP, Event, EventP, EventTarget, EventTargetP, File, FileP, FileReader, FileReaderP, FormData, FormDataP, Headers, HeadersP, Request, RequestP, Response, ResponseP, TextDecoder, TextDecoderP, TextEncoder, TextEncoderP, URLSearchParams, URLSearchParamsP, fixFetch, fixWebSocket, fixXMLHttpRequest, setFullOverride, setReadableStreamClass,
|
|
1
|
+
export { AbortController, AbortControllerP, AbortSignal, AbortSignalP, Blob, BlobP, CustomEvent, CustomEventP, Event, EventP, EventTarget, EventTargetP, File, FileP, FileReader, FileReaderP, FormData, FormDataP, Headers, HeadersP, Request, RequestP, Response, ResponseP, TextDecoder, TextDecoderP, TextEncoder, TextEncoderP, URLSearchParams, URLSearchParamsP, fixFetch, fixWebSocket, fixXMLHttpRequest, setFullOverride, setReadableStreamClass, setTextMode, setXMLHttpRequestClass } from 'fetch-xhr-shim';
|
|
2
2
|
export { fetch, fetchP } from './fetchP.js';
|
|
3
3
|
export { getPlatform } from 'miniprogram-platform';
|
|
4
|
-
export {
|
|
5
|
-
export { WebSocket, WebSocketP, setConnectSocketFunc
|
|
4
|
+
export { XMLHttpRequest, XMLHttpRequestP, setRequestFunc, useCookie } from 'miniprogram-xmlhttprequest-shim';
|
|
5
|
+
export { WebSocket, WebSocketP, setConnectSocketFunc } from 'miniprogram-websocket';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { fetchP } from 'fetch-xhr-shim';
|
|
2
|
-
export { AbortController, AbortControllerP, AbortSignal, AbortSignalP, Blob, BlobP, CustomEvent, CustomEventP, Event, EventP, EventTarget, EventTargetP, File, FileP, FileReader, FileReaderP, FormData, FormDataP, Headers, HeadersP, Request, RequestP, Response, ResponseP, TextDecoder, TextDecoderP, TextEncoder, TextEncoderP, URLSearchParams, URLSearchParamsP, fixFetch, fixWebSocket, fixXMLHttpRequest, setFullOverride, setReadableStreamClass,
|
|
2
|
+
export { AbortController, AbortControllerP, AbortSignal, AbortSignalP, Blob, BlobP, CustomEvent, CustomEventP, Event, EventP, EventTarget, EventTargetP, File, FileP, FileReader, FileReaderP, FormData, FormDataP, Headers, HeadersP, Request, RequestP, Response, ResponseP, TextDecoder, TextDecoderP, TextEncoder, TextEncoderP, URLSearchParams, URLSearchParamsP, fixFetch, fixWebSocket, fixXMLHttpRequest, setFullOverride, setReadableStreamClass, setTextMode, setXMLHttpRequestClass } from 'fetch-xhr-shim';
|
|
3
3
|
export { getPlatform } from 'miniprogram-platform';
|
|
4
|
-
export {
|
|
5
|
-
export { WebSocket, WebSocketP, setConnectSocketFunc
|
|
4
|
+
export { XMLHttpRequest, XMLHttpRequestP, setRequestFunc, useCookie } from 'miniprogram-xmlhttprequest-shim';
|
|
5
|
+
export { WebSocket, WebSocketP, setConnectSocketFunc } from 'miniprogram-websocket';
|
|
6
6
|
|
|
7
7
|
declare const fetchE: typeof globalThis.fetch;
|
|
8
8
|
declare const fetchPolyfill: typeof fetchP;
|