egg 4.0.0 → 4.0.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.
- package/dist/commonjs/app/extend/context.d.ts +14 -1
- package/dist/commonjs/app/extend/context.js +1 -2
- package/dist/commonjs/app/extend/request.d.ts +9 -1
- package/dist/commonjs/app/extend/request.js +1 -2
- package/dist/commonjs/app/extend/response.d.ts +6 -1
- package/dist/commonjs/app/extend/response.js +1 -2
- package/dist/commonjs/config/plugin.js +6 -7
- package/dist/commonjs/index.d.ts +1 -0
- package/dist/commonjs/index.js +2 -1
- package/dist/commonjs/lib/core/httpclient.d.ts +3 -3
- package/dist/commonjs/lib/core/httpclient.js +10 -5
- package/dist/commonjs/lib/core/singleton.d.ts +16 -10
- package/dist/commonjs/lib/core/singleton.js +8 -3
- package/dist/commonjs/lib/egg.d.ts +21 -2
- package/dist/commonjs/lib/egg.js +9 -3
- package/dist/commonjs/lib/types.d.ts +17 -73
- package/dist/commonjs/lib/types.js +7 -1
- package/dist/esm/app/extend/context.d.ts +14 -1
- package/dist/esm/app/extend/context.js +1 -2
- package/dist/esm/app/extend/request.d.ts +9 -1
- package/dist/esm/app/extend/request.js +1 -2
- package/dist/esm/app/extend/response.d.ts +6 -1
- package/dist/esm/app/extend/response.js +1 -2
- package/dist/esm/config/plugin.js +6 -7
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +2 -1
- package/dist/esm/lib/core/httpclient.d.ts +3 -3
- package/dist/esm/lib/core/httpclient.js +10 -5
- package/dist/esm/lib/core/singleton.d.ts +16 -10
- package/dist/esm/lib/core/singleton.js +8 -3
- package/dist/esm/lib/egg.d.ts +21 -2
- package/dist/esm/lib/egg.js +9 -3
- package/dist/esm/lib/types.d.ts +17 -73
- package/dist/esm/lib/types.js +7 -1
- package/dist/package.json +1 -1
- package/package.json +6 -6
- package/src/app/extend/context.ts +16 -2
- package/src/app/extend/request.ts +11 -2
- package/src/app/extend/response.ts +8 -2
- package/src/config/plugin.ts +5 -7
- package/src/index.ts +1 -0
- package/src/lib/core/httpclient.ts +11 -4
- package/src/lib/core/singleton.ts +17 -12
- package/src/lib/egg.ts +30 -5
- package/src/lib/types.ts +18 -104
- package/dist/commonjs/app/extend/context.types.d.ts +0 -18
- package/dist/commonjs/app/extend/context.types.js +0 -3
- package/dist/commonjs/app/extend/request.types.d.ts +0 -10
- package/dist/commonjs/app/extend/request.types.js +0 -3
- package/dist/commonjs/app/extend/response.types.d.ts +0 -7
- package/dist/commonjs/app/extend/response.types.js +0 -3
- package/dist/commonjs/lib/egg.types.d.ts +0 -13
- package/dist/commonjs/lib/egg.types.js +0 -3
- package/dist/esm/app/extend/context.types.d.ts +0 -18
- package/dist/esm/app/extend/context.types.js +0 -2
- package/dist/esm/app/extend/request.types.d.ts +0 -10
- package/dist/esm/app/extend/request.types.js +0 -2
- package/dist/esm/app/extend/response.types.d.ts +0 -7
- package/dist/esm/app/extend/response.types.js +0 -2
- package/dist/esm/lib/egg.types.d.ts +0 -13
- package/dist/esm/lib/egg.types.js +0 -2
- package/src/app/extend/context.types.ts +0 -24
- package/src/app/extend/request.types.ts +0 -10
- package/src/app/extend/response.types.ts +0 -7
- package/src/lib/egg.types.ts +0 -15
package/dist/esm/lib/egg.js
CHANGED
|
@@ -23,7 +23,6 @@ import { convertObject } from './core/utils.js';
|
|
|
23
23
|
import { BaseContextClass } from './core/base_context_class.js';
|
|
24
24
|
import { BaseHookClass } from './core/base_hook_class.js';
|
|
25
25
|
import { getSourceDirname } from './utils.js';
|
|
26
|
-
import './egg.types.js';
|
|
27
26
|
const EGG_PATH = Symbol.for('egg#eggPath');
|
|
28
27
|
export class Request extends EggCoreRequest {
|
|
29
28
|
}
|
|
@@ -303,6 +302,13 @@ export class EggApplicationCore extends EggCore {
|
|
|
303
302
|
async curl(url, options) {
|
|
304
303
|
return await this.httpClient.request(url, options);
|
|
305
304
|
}
|
|
305
|
+
/**
|
|
306
|
+
* Create a new HttpClient instance with custom options
|
|
307
|
+
* @param {Object} [options] HttpClient init options
|
|
308
|
+
*/
|
|
309
|
+
createHttpClient(options) {
|
|
310
|
+
return new this.HttpClient(this, options);
|
|
311
|
+
}
|
|
306
312
|
/**
|
|
307
313
|
* HttpClient instance
|
|
308
314
|
* @see https://github.com/node-modules/urllib
|
|
@@ -310,7 +316,7 @@ export class EggApplicationCore extends EggCore {
|
|
|
310
316
|
*/
|
|
311
317
|
get httpClient() {
|
|
312
318
|
if (!this.#httpClient) {
|
|
313
|
-
this.#httpClient =
|
|
319
|
+
this.#httpClient = this.createHttpClient();
|
|
314
320
|
}
|
|
315
321
|
return this.#httpClient;
|
|
316
322
|
}
|
|
@@ -581,4 +587,4 @@ export class EggApplicationCore extends EggCore {
|
|
|
581
587
|
return context;
|
|
582
588
|
}
|
|
583
589
|
}
|
|
584
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWdnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9lZ2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekIsT0FBTyxJQUFtRCxNQUFNLFdBQVcsQ0FBQztBQUM1RSxPQUFPLFNBQVMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2QyxPQUFPLEVBQ0wsT0FBTyxFQUNQLE9BQU8sSUFBSSxjQUFjLEVBQ3pCLFFBQVEsSUFBSSxlQUFlLEVBQzNCLE1BQU0sR0FDUCxNQUFNLGFBQWEsQ0FBQztBQU1yQiw2REFBNkQ7QUFDN0QsYUFBYTtBQUNiLE9BQU8sbUJBQW1CLEVBQUUsRUFBRSxLQUFLLElBQUksa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxnQkFBZ0IsSUFBSSxhQUFhLEVBQXlCLE1BQU0sWUFBWSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsNkRBQTZEO0FBQzdELGFBQWE7QUFDYixPQUFPLFlBQVksTUFBTSx1QkFBdUIsQ0FBQztBQUdqRCxPQUFPLE9BQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsTUFBTSxJQUFJLGVBQWUsRUFBYyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFDTCxVQUFVLEdBQ1gsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUNMLFNBQVMs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
|
|
590
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWdnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9lZ2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sSUFBSSxNQUFNLFdBQVcsQ0FBQztBQUM3QixPQUFPLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekIsT0FBTyxJQUFtRCxNQUFNLFdBQVcsQ0FBQztBQUM1RSxPQUFPLFNBQVMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2QyxPQUFPLEVBQ0wsT0FBTyxFQUNQLE9BQU8sSUFBSSxjQUFjLEVBQ3pCLFFBQVEsSUFBSSxlQUFlLEVBQzNCLE1BQU0sR0FDUCxNQUFNLGFBQWEsQ0FBQztBQU1yQiw2REFBNkQ7QUFDN0QsYUFBYTtBQUNiLE9BQU8sbUJBQW1CLEVBQUUsRUFBRSxLQUFLLElBQUksa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxnQkFBZ0IsSUFBSSxhQUFhLEVBQXlCLE1BQU0sWUFBWSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxPQUFPLElBQUksY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsNkRBQTZEO0FBQzdELGFBQWE7QUFDYixPQUFPLFlBQVksTUFBTSx1QkFBdUIsQ0FBQztBQUdqRCxPQUFPLE9BQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsTUFBTSxJQUFJLGVBQWUsRUFBYyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFDTCxVQUFVLEdBR1gsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUNMLFNBQVMs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
|
package/dist/esm/lib/types.d.ts
CHANGED
|
@@ -8,6 +8,12 @@ import type { NotFoundMiddlewareOptions } from '../app/middleware/notfound.js';
|
|
|
8
8
|
import type { SiteFileMiddlewareOptions } from '../app/middleware/site_file.js';
|
|
9
9
|
import '@eggjs/watcher';
|
|
10
10
|
import '@eggjs/development';
|
|
11
|
+
import '@eggjs/jsonp';
|
|
12
|
+
import '@eggjs/i18n';
|
|
13
|
+
import '@eggjs/static';
|
|
14
|
+
import '@eggjs/security';
|
|
15
|
+
import '@eggjs/schedule';
|
|
16
|
+
import '@eggjs/session';
|
|
11
17
|
export type { EggAppInfo, } from '@eggjs/core';
|
|
12
18
|
type IgnoreItem = string | RegExp | ((ctx: Context) => boolean);
|
|
13
19
|
type IgnoreOrMatch = IgnoreItem | IgnoreItem[];
|
|
@@ -44,6 +50,16 @@ export interface CustomLoaderConfig extends Omit<FileLoaderOptions, 'inject' | '
|
|
|
44
50
|
*/
|
|
45
51
|
loadunit?: boolean;
|
|
46
52
|
}
|
|
53
|
+
export interface HttpClientConfig {
|
|
54
|
+
/** Request timeout */
|
|
55
|
+
timeout?: number;
|
|
56
|
+
/** Default request args for httpclient */
|
|
57
|
+
request?: HttpClientRequestOptions;
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated keep compatible with egg 3.x, no more used
|
|
60
|
+
*/
|
|
61
|
+
useHttpClientNext?: boolean;
|
|
62
|
+
}
|
|
47
63
|
export interface EggAppConfig extends EggCoreAppConfig {
|
|
48
64
|
workerStartTimeout: number;
|
|
49
65
|
baseDir: string;
|
|
@@ -115,16 +131,7 @@ export interface EggAppConfig extends EggCoreAppConfig {
|
|
|
115
131
|
[key: string]: EggLoggerOptions;
|
|
116
132
|
};
|
|
117
133
|
/** Configuration of httpclient in egg. */
|
|
118
|
-
httpclient:
|
|
119
|
-
/** Request timeout */
|
|
120
|
-
timeout?: number;
|
|
121
|
-
/** Default request args for httpclient */
|
|
122
|
-
request?: HttpClientRequestOptions;
|
|
123
|
-
/**
|
|
124
|
-
* @deprecated keep compatible with egg 3.x, no more used
|
|
125
|
-
*/
|
|
126
|
-
useHttpClientNext?: boolean;
|
|
127
|
-
};
|
|
134
|
+
httpclient: HttpClientConfig;
|
|
128
135
|
/**
|
|
129
136
|
* customLoader config
|
|
130
137
|
*/
|
|
@@ -146,31 +153,6 @@ export interface EggAppConfig extends EggCoreAppConfig {
|
|
|
146
153
|
*/
|
|
147
154
|
HOME: string;
|
|
148
155
|
hostHeaders: string;
|
|
149
|
-
/**
|
|
150
|
-
* I18n options
|
|
151
|
-
*/
|
|
152
|
-
i18n: {
|
|
153
|
-
/**
|
|
154
|
-
* default value EN_US
|
|
155
|
-
*/
|
|
156
|
-
defaultLocale: string;
|
|
157
|
-
/**
|
|
158
|
-
* i18n resource file dir, not recommend to change default value
|
|
159
|
-
*/
|
|
160
|
-
dirs: string[];
|
|
161
|
-
/**
|
|
162
|
-
* custom the locale value field, default `query.locale`, you can modify this config, such as `query.lang`
|
|
163
|
-
*/
|
|
164
|
-
queryField: string;
|
|
165
|
-
/**
|
|
166
|
-
* The locale value key in the cookie, default is locale.
|
|
167
|
-
*/
|
|
168
|
-
cookieField: string;
|
|
169
|
-
/**
|
|
170
|
-
* Locale cookie expire time, default `1y`, If pass number value, the unit will be ms
|
|
171
|
-
*/
|
|
172
|
-
cookieMaxAge: string | number;
|
|
173
|
-
};
|
|
174
156
|
/**
|
|
175
157
|
* Detect request' ip from specified headers, not case-sensitive. Only worked when config.proxy set to true.
|
|
176
158
|
*/
|
|
@@ -183,20 +165,6 @@ export interface EggAppConfig extends EggCoreAppConfig {
|
|
|
183
165
|
sameSite?: string;
|
|
184
166
|
httpOnly?: boolean;
|
|
185
167
|
};
|
|
186
|
-
/**
|
|
187
|
-
* jsonp options
|
|
188
|
-
* @member Config#jsonp
|
|
189
|
-
* @property {String} callback - jsonp callback method key, default to `_callback`
|
|
190
|
-
* @property {Number} limit - callback method name's max length, default to `50`
|
|
191
|
-
* @property {Boolean} csrf - enable csrf check or not. default to false
|
|
192
|
-
* @property {String|RegExp|Array} whiteList - referrer white list
|
|
193
|
-
*/
|
|
194
|
-
jsonp: {
|
|
195
|
-
limit: number;
|
|
196
|
-
callback: string;
|
|
197
|
-
csrf: boolean;
|
|
198
|
-
whiteList: string | RegExp | Array<string | RegExp>;
|
|
199
|
-
};
|
|
200
168
|
/**
|
|
201
169
|
* The key that signing cookies. It can contain multiple keys separated by .
|
|
202
170
|
*/
|
|
@@ -210,30 +178,6 @@ export interface EggAppConfig extends EggCoreAppConfig {
|
|
|
210
178
|
*/
|
|
211
179
|
pkg: Record<string, any>;
|
|
212
180
|
rundir: string;
|
|
213
|
-
security: {
|
|
214
|
-
domainWhiteList: string[];
|
|
215
|
-
protocolWhiteList: string[];
|
|
216
|
-
defaultMiddleware: string;
|
|
217
|
-
csrf: any;
|
|
218
|
-
ssrf: {
|
|
219
|
-
ipBlackList: string[];
|
|
220
|
-
ipExceptionList: string[];
|
|
221
|
-
checkAddress?(ip: string): boolean;
|
|
222
|
-
};
|
|
223
|
-
xframe: {
|
|
224
|
-
enable: boolean;
|
|
225
|
-
value: 'SAMEORIGIN' | 'DENY' | 'ALLOW-FROM';
|
|
226
|
-
};
|
|
227
|
-
hsts: any;
|
|
228
|
-
methodnoallow: {
|
|
229
|
-
enable: boolean;
|
|
230
|
-
};
|
|
231
|
-
noopen: {
|
|
232
|
-
enable: boolean;
|
|
233
|
-
};
|
|
234
|
-
xssProtection: any;
|
|
235
|
-
csp: any;
|
|
236
|
-
};
|
|
237
181
|
siteFile: SiteFileMiddlewareOptions;
|
|
238
182
|
meta: MetaMiddlewareOptions;
|
|
239
183
|
notfound: NotFoundMiddlewareOptions;
|
package/dist/esm/lib/types.js
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
// import plugins types
|
|
2
2
|
import '@eggjs/watcher';
|
|
3
3
|
import '@eggjs/development';
|
|
4
|
-
|
|
4
|
+
import '@eggjs/jsonp';
|
|
5
|
+
import '@eggjs/i18n';
|
|
6
|
+
import '@eggjs/static';
|
|
7
|
+
import '@eggjs/security';
|
|
8
|
+
import '@eggjs/schedule';
|
|
9
|
+
import '@eggjs/session';
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtCQSx1QkFBdUI7QUFDdkIsT0FBTyxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sYUFBYSxDQUFDO0FBQ3JCLE9BQU8sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8saUJBQWlCLENBQUM7QUFDekIsT0FBTyxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLGdCQUFnQixDQUFDIn0=
|
package/dist/package.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "egg",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.2",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">= 18.19.0"
|
|
6
6
|
},
|
|
@@ -23,21 +23,21 @@
|
|
|
23
23
|
"@eggjs/cookies": "^3.0.0",
|
|
24
24
|
"@eggjs/core": "^6.2.13",
|
|
25
25
|
"@eggjs/development": "^4.0.0",
|
|
26
|
+
"@eggjs/i18n": "^3.0.1",
|
|
27
|
+
"@eggjs/jsonp": "^3.0.0",
|
|
26
28
|
"@eggjs/schedule": "^5.0.2",
|
|
29
|
+
"@eggjs/security": "^4.0.0",
|
|
30
|
+
"@eggjs/session": "^4.0.0",
|
|
31
|
+
"@eggjs/static": "^3.0.0",
|
|
27
32
|
"@eggjs/utils": "^4.2.4",
|
|
28
33
|
"@eggjs/watcher": "^4.0.3",
|
|
29
34
|
"circular-json-for-egg": "^1.0.0",
|
|
30
35
|
"cluster-client": "^3.7.0",
|
|
31
36
|
"egg-errors": "^2.3.1",
|
|
32
|
-
"egg-i18n": "^2.1.1",
|
|
33
|
-
"egg-jsonp": "^2.0.0",
|
|
34
37
|
"egg-logger": "^3.6.0",
|
|
35
38
|
"egg-logrotator": "^3.1.0",
|
|
36
39
|
"egg-multipart": "^3.1.0",
|
|
37
40
|
"egg-onerror": "^2.1.1",
|
|
38
|
-
"egg-security": "^3.0.0",
|
|
39
|
-
"egg-session": "^3.3.0",
|
|
40
|
-
"egg-static": "^2.2.0",
|
|
41
41
|
"egg-view": "^2.1.3",
|
|
42
42
|
"extend2": "^4.0.0",
|
|
43
43
|
"graceful": "^2.0.0",
|
|
@@ -14,8 +14,6 @@ import type Request from './request.js';
|
|
|
14
14
|
import type Response from './response.js';
|
|
15
15
|
import type Helper from './helper.js';
|
|
16
16
|
|
|
17
|
-
import './context.types.js';
|
|
18
|
-
|
|
19
17
|
const HELPER = Symbol('ctx helper');
|
|
20
18
|
const LOCALS = Symbol('ctx locals');
|
|
21
19
|
const LOCALS_LIST = Symbol('ctx localsList');
|
|
@@ -306,3 +304,19 @@ export default class Context extends EggCoreContext {
|
|
|
306
304
|
this.response.realStatus = val;
|
|
307
305
|
}
|
|
308
306
|
}
|
|
307
|
+
|
|
308
|
+
declare module '@eggjs/core' {
|
|
309
|
+
// add Context overrides types
|
|
310
|
+
interface Context {
|
|
311
|
+
curl(url: HttpClientRequestURL, options?: HttpClientRequestOptions): ReturnType<HttpClient['request']>;
|
|
312
|
+
get router(): Router;
|
|
313
|
+
set router(val: Router);
|
|
314
|
+
get helper(): Helper;
|
|
315
|
+
get httpclient(): HttpClient;
|
|
316
|
+
get httpClient(): HttpClient;
|
|
317
|
+
getLogger(name: string): EggLogger;
|
|
318
|
+
get logger(): EggLogger;
|
|
319
|
+
get coreLogger(): EggLogger;
|
|
320
|
+
get locals(): Record<string, any>;
|
|
321
|
+
}
|
|
322
|
+
}
|
|
@@ -11,8 +11,6 @@ const HOST = Symbol('request host');
|
|
|
11
11
|
const IPS = Symbol('request ips');
|
|
12
12
|
const RE_ARRAY_KEY = /[^\[\]]+\[\]$/;
|
|
13
13
|
|
|
14
|
-
import './request.types.js';
|
|
15
|
-
|
|
16
14
|
export default class Request extends EggCoreRequest {
|
|
17
15
|
declare app: Application;
|
|
18
16
|
declare ctx: Context;
|
|
@@ -266,6 +264,17 @@ export default class Request extends EggCoreRequest {
|
|
|
266
264
|
}
|
|
267
265
|
}
|
|
268
266
|
|
|
267
|
+
declare module '@eggjs/core' {
|
|
268
|
+
// add Request overrides types
|
|
269
|
+
interface Request {
|
|
270
|
+
body: any;
|
|
271
|
+
get acceptJSON(): boolean;
|
|
272
|
+
get query(): Record<string, string>;
|
|
273
|
+
set query(obj: Record<string, string>);
|
|
274
|
+
get queries(): Record<string, string[]>;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
|
|
269
278
|
function firstValue(value: string | string[]) {
|
|
270
279
|
if (Array.isArray(value)) {
|
|
271
280
|
value = value[0];
|
|
@@ -2,8 +2,6 @@ import { Response as KoaResponse } from '@eggjs/core';
|
|
|
2
2
|
|
|
3
3
|
const REAL_STATUS = Symbol('response realStatus');
|
|
4
4
|
|
|
5
|
-
import './response.types.js';
|
|
6
|
-
|
|
7
5
|
export default class Response extends KoaResponse {
|
|
8
6
|
/**
|
|
9
7
|
* Get or set a real status code.
|
|
@@ -36,3 +34,11 @@ export default class Response extends KoaResponse {
|
|
|
36
34
|
this[REAL_STATUS] = status;
|
|
37
35
|
}
|
|
38
36
|
}
|
|
37
|
+
|
|
38
|
+
declare module '@eggjs/core' {
|
|
39
|
+
// add Response overrides types
|
|
40
|
+
interface Response {
|
|
41
|
+
get realStatus(): number;
|
|
42
|
+
set realStatus(status: number);
|
|
43
|
+
}
|
|
44
|
+
}
|
package/src/config/plugin.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
export default {
|
|
2
|
-
// enable plugins
|
|
3
|
-
|
|
4
2
|
/**
|
|
5
3
|
* app global Error Handling
|
|
6
4
|
* @member {Object} Plugin#onerror
|
|
@@ -19,7 +17,7 @@ export default {
|
|
|
19
17
|
*/
|
|
20
18
|
session: {
|
|
21
19
|
enable: true,
|
|
22
|
-
package: '
|
|
20
|
+
package: '@eggjs/session',
|
|
23
21
|
},
|
|
24
22
|
|
|
25
23
|
/**
|
|
@@ -30,7 +28,7 @@ export default {
|
|
|
30
28
|
*/
|
|
31
29
|
i18n: {
|
|
32
30
|
enable: true,
|
|
33
|
-
package: '
|
|
31
|
+
package: '@eggjs/i18n',
|
|
34
32
|
},
|
|
35
33
|
|
|
36
34
|
/**
|
|
@@ -63,7 +61,7 @@ export default {
|
|
|
63
61
|
*/
|
|
64
62
|
security: {
|
|
65
63
|
enable: true,
|
|
66
|
-
package: '
|
|
64
|
+
package: '@eggjs/security',
|
|
67
65
|
},
|
|
68
66
|
|
|
69
67
|
/**
|
|
@@ -107,7 +105,7 @@ export default {
|
|
|
107
105
|
*/
|
|
108
106
|
static: {
|
|
109
107
|
enable: true,
|
|
110
|
-
package: '
|
|
108
|
+
package: '@eggjs/static',
|
|
111
109
|
},
|
|
112
110
|
|
|
113
111
|
/**
|
|
@@ -118,7 +116,7 @@ export default {
|
|
|
118
116
|
*/
|
|
119
117
|
jsonp: {
|
|
120
118
|
enable: true,
|
|
121
|
-
package: '
|
|
119
|
+
package: '@eggjs/jsonp',
|
|
122
120
|
},
|
|
123
121
|
|
|
124
122
|
/**
|
package/src/index.ts
CHANGED
|
@@ -2,6 +2,7 @@ import {
|
|
|
2
2
|
HttpClient as RawHttpClient,
|
|
3
3
|
RequestURL as HttpClientRequestURL,
|
|
4
4
|
RequestOptions,
|
|
5
|
+
ClientOptions as HttpClientOptions,
|
|
5
6
|
} from 'urllib';
|
|
6
7
|
import { ms } from 'humanize-ms';
|
|
7
8
|
import type { EggApplicationCore } from '../egg.js';
|
|
@@ -9,6 +10,7 @@ import type { EggApplicationCore } from '../egg.js';
|
|
|
9
10
|
export type {
|
|
10
11
|
HttpClientResponse,
|
|
11
12
|
RequestURL as HttpClientRequestURL,
|
|
13
|
+
ClientOptions as HttpClientOptions,
|
|
12
14
|
} from 'urllib';
|
|
13
15
|
|
|
14
16
|
export interface HttpClientRequestOptions extends RequestOptions {
|
|
@@ -19,12 +21,17 @@ export interface HttpClientRequestOptions extends RequestOptions {
|
|
|
19
21
|
export class HttpClient extends RawHttpClient {
|
|
20
22
|
readonly #app: EggApplicationCore & { tracer?: any };
|
|
21
23
|
|
|
22
|
-
constructor(app: EggApplicationCore) {
|
|
24
|
+
constructor(app: EggApplicationCore, options: HttpClientOptions = {}) {
|
|
23
25
|
normalizeConfig(app);
|
|
24
26
|
const config = app.config.httpclient;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
const initOptions: HttpClientOptions = {
|
|
28
|
+
...options,
|
|
29
|
+
defaultArgs: {
|
|
30
|
+
...config.request,
|
|
31
|
+
...options.defaultArgs,
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
super(initOptions);
|
|
28
35
|
this.#app = app;
|
|
29
36
|
}
|
|
30
37
|
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import assert from 'node:assert';
|
|
2
2
|
import { isAsyncFunction } from 'is-type-of';
|
|
3
|
-
import type {
|
|
3
|
+
import type { EggCore } from '@eggjs/core';
|
|
4
4
|
|
|
5
5
|
export type SingletonCreateMethod =
|
|
6
|
-
(config: Record<string, any>, app:
|
|
6
|
+
(config: Record<string, any>, app: EggCore, clientName: string) => unknown | Promise<unknown>;
|
|
7
7
|
|
|
8
8
|
export interface SingletonOptions {
|
|
9
9
|
name: string;
|
|
10
|
-
app:
|
|
10
|
+
app: EggCore;
|
|
11
11
|
create: SingletonCreateMethod;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
export class Singleton {
|
|
15
|
-
readonly clients = new Map<string,
|
|
16
|
-
readonly app:
|
|
14
|
+
export class Singleton<T = any> {
|
|
15
|
+
readonly clients = new Map<string, T>();
|
|
16
|
+
readonly app: EggCore;
|
|
17
17
|
readonly create: SingletonCreateMethod;
|
|
18
18
|
readonly name: string;
|
|
19
19
|
readonly options: Record<string, any>;
|
|
@@ -46,7 +46,7 @@ export class Singleton {
|
|
|
46
46
|
return;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
// multi client, use app[name].
|
|
49
|
+
// multi client, use app[name].getSingletonInstance(id)
|
|
50
50
|
if (options.clients) {
|
|
51
51
|
Object.keys(options.clients).forEach(id => {
|
|
52
52
|
const client = this.createInstance(options.clients[id], id);
|
|
@@ -91,13 +91,18 @@ export class Singleton {
|
|
|
91
91
|
Reflect.set(this.app, this.name, client);
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
+
/**
|
|
95
|
+
* @deprecated please use `getSingletonInstance(id)` instead
|
|
96
|
+
*/
|
|
94
97
|
get(id: string) {
|
|
95
|
-
return this.clients.get(id)
|
|
98
|
+
return this.clients.get(id)!;
|
|
96
99
|
}
|
|
97
100
|
|
|
98
|
-
|
|
101
|
+
/**
|
|
102
|
+
* Get singleton instance by id
|
|
103
|
+
*/
|
|
99
104
|
getSingletonInstance(id: string) {
|
|
100
|
-
return this.clients.get(id)
|
|
105
|
+
return this.clients.get(id)!;
|
|
101
106
|
}
|
|
102
107
|
|
|
103
108
|
createInstance(config: Record<string, any>, clientName: string) {
|
|
@@ -109,7 +114,7 @@ export class Singleton {
|
|
|
109
114
|
...this.options.default,
|
|
110
115
|
...config,
|
|
111
116
|
};
|
|
112
|
-
return (this.create as SingletonCreateMethod)(config, this.app, clientName);
|
|
117
|
+
return (this.create as SingletonCreateMethod)(config, this.app, clientName) as T;
|
|
113
118
|
}
|
|
114
119
|
|
|
115
120
|
async createInstanceAsync(config: Record<string, any>, clientName: string) {
|
|
@@ -118,7 +123,7 @@ export class Singleton {
|
|
|
118
123
|
...this.options.default,
|
|
119
124
|
...config,
|
|
120
125
|
};
|
|
121
|
-
return await this.create(config, this.app, clientName);
|
|
126
|
+
return await this.create(config, this.app, clientName) as T;
|
|
122
127
|
}
|
|
123
128
|
|
|
124
129
|
#extendDynamicMethods(client: any) {
|
package/src/lib/egg.ts
CHANGED
|
@@ -31,7 +31,9 @@ import type { EggAppConfig } from './types.js';
|
|
|
31
31
|
import { create as createMessenger, IMessenger } from './core/messenger/index.js';
|
|
32
32
|
import { ContextHttpClient } from './core/context_httpclient.js';
|
|
33
33
|
import {
|
|
34
|
-
HttpClient,
|
|
34
|
+
HttpClient,
|
|
35
|
+
type HttpClientRequestOptions, type HttpClientRequestURL, type HttpClientResponse,
|
|
36
|
+
type HttpClientOptions,
|
|
35
37
|
} from './core/httpclient.js';
|
|
36
38
|
import { createLoggers } from './core/logger.js';
|
|
37
39
|
import {
|
|
@@ -43,8 +45,6 @@ import { BaseHookClass } from './core/base_hook_class.js';
|
|
|
43
45
|
import type { EggApplicationLoader } from './loader/index.js';
|
|
44
46
|
import { getSourceDirname } from './utils.js';
|
|
45
47
|
|
|
46
|
-
import './egg.types.js';
|
|
47
|
-
|
|
48
48
|
const EGG_PATH = Symbol.for('egg#eggPath');
|
|
49
49
|
|
|
50
50
|
export interface EggApplicationCoreOptions extends Omit<EggCoreOptions, 'baseDir'> {
|
|
@@ -387,14 +387,22 @@ export class EggApplicationCore extends EggCore {
|
|
|
387
387
|
return await this.httpClient.request<T>(url, options);
|
|
388
388
|
}
|
|
389
389
|
|
|
390
|
+
/**
|
|
391
|
+
* Create a new HttpClient instance with custom options
|
|
392
|
+
* @param {Object} [options] HttpClient init options
|
|
393
|
+
*/
|
|
394
|
+
createHttpClient(options?: HttpClientOptions): HttpClient {
|
|
395
|
+
return new this.HttpClient(this, options);
|
|
396
|
+
}
|
|
397
|
+
|
|
390
398
|
/**
|
|
391
399
|
* HttpClient instance
|
|
392
400
|
* @see https://github.com/node-modules/urllib
|
|
393
401
|
* @member {HttpClient}
|
|
394
402
|
*/
|
|
395
|
-
get httpClient() {
|
|
403
|
+
get httpClient(): HttpClient {
|
|
396
404
|
if (!this.#httpClient) {
|
|
397
|
-
this.#httpClient =
|
|
405
|
+
this.#httpClient = this.createHttpClient();
|
|
398
406
|
}
|
|
399
407
|
return this.#httpClient;
|
|
400
408
|
}
|
|
@@ -680,3 +688,20 @@ export class EggApplicationCore extends EggCore {
|
|
|
680
688
|
return context;
|
|
681
689
|
}
|
|
682
690
|
}
|
|
691
|
+
|
|
692
|
+
declare module '@eggjs/core' {
|
|
693
|
+
// add EggApplicationCore overrides types
|
|
694
|
+
interface EggCore {
|
|
695
|
+
inspect(): any;
|
|
696
|
+
get currentContext(): EggContext | undefined;
|
|
697
|
+
ctxStorage: AsyncLocalStorage<EggContext>;
|
|
698
|
+
get logger(): EggLogger;
|
|
699
|
+
get coreLogger(): EggLogger;
|
|
700
|
+
getLogger(name: string): EggLogger;
|
|
701
|
+
createHttpClient(options?: HttpClientOptions): HttpClient;
|
|
702
|
+
HttpClient: typeof HttpClient;
|
|
703
|
+
get httpClient(): HttpClient;
|
|
704
|
+
curl<T = any>(url: HttpClientRequestURL, options?: HttpClientRequestOptions): Promise<HttpClientResponse<T>>;
|
|
705
|
+
addSingleton(name: string, create: SingletonCreateMethod): void;
|
|
706
|
+
}
|
|
707
|
+
}
|