@spinajs/http 2.0.312 → 2.0.314
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/lib/cjs/middlewares/ReqStorage.d.ts +13 -0
- package/lib/cjs/middlewares/ReqStorage.d.ts.map +1 -0
- package/lib/cjs/middlewares/ReqStorage.js +39 -0
- package/lib/cjs/middlewares/ReqStorage.js.map +1 -0
- package/lib/cjs/server.d.ts +10 -1
- package/lib/cjs/server.d.ts.map +1 -1
- package/lib/cjs/server.js +31 -26
- package/lib/cjs/server.js.map +1 -1
- package/lib/mjs/middlewares/ReqStorage.d.ts +13 -0
- package/lib/mjs/middlewares/ReqStorage.d.ts.map +1 -0
- package/lib/mjs/middlewares/ReqStorage.js +36 -0
- package/lib/mjs/middlewares/ReqStorage.js.map +1 -0
- package/lib/mjs/server.d.ts +10 -1
- package/lib/mjs/server.d.ts.map +1 -1
- package/lib/mjs/server.js +31 -26
- package/lib/mjs/server.js.map +1 -1
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.mjs.tsbuildinfo +1 -1
- package/package.json +11 -11
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Response, NextFunction } from 'express';
|
|
2
|
+
import { ServerMiddleware, Request as sRequest } from '../interfaces.js';
|
|
3
|
+
import * as express from 'express';
|
|
4
|
+
/**
|
|
5
|
+
* Create expressjs request storage prop.
|
|
6
|
+
* Other middlewares / modules could use it for per request storage app wise
|
|
7
|
+
*/
|
|
8
|
+
export declare class RequestStorage extends ServerMiddleware {
|
|
9
|
+
constructor();
|
|
10
|
+
after(): (_req: sRequest, _res: express.Response, next: express.NextFunction) => void;
|
|
11
|
+
before(): (req: sRequest, res: Response<any, Record<string, any>>, next: NextFunction) => void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ReqStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReqStorage.d.ts","sourceRoot":"","sources":["../../../src/middlewares/ReqStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC;;;GAGG;AACH,qBACa,cAAe,SAAQ,gBAAgB;;IAM3C,KAAK,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,KAAK,IAAI;IAIrF,MAAM,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI;CAMtG"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.RequestStorage = void 0;
|
|
13
|
+
const interfaces_js_1 = require("../interfaces.js");
|
|
14
|
+
const di_1 = require("@spinajs/di");
|
|
15
|
+
/**
|
|
16
|
+
* Create expressjs request storage prop.
|
|
17
|
+
* Other middlewares / modules could use it for per request storage app wise
|
|
18
|
+
*/
|
|
19
|
+
let RequestStorage = class RequestStorage extends interfaces_js_1.ServerMiddleware {
|
|
20
|
+
constructor() {
|
|
21
|
+
super();
|
|
22
|
+
this.Order = -2;
|
|
23
|
+
}
|
|
24
|
+
after() {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
before() {
|
|
28
|
+
return (req, _res, next) => {
|
|
29
|
+
req.storage = {};
|
|
30
|
+
next();
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
exports.RequestStorage = RequestStorage;
|
|
35
|
+
exports.RequestStorage = RequestStorage = __decorate([
|
|
36
|
+
(0, di_1.Injectable)(interfaces_js_1.ServerMiddleware),
|
|
37
|
+
__metadata("design:paramtypes", [])
|
|
38
|
+
], RequestStorage);
|
|
39
|
+
//# sourceMappingURL=ReqStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReqStorage.js","sourceRoot":"","sources":["../../../src/middlewares/ReqStorage.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,oDAAyE;AAEzE,oCAAyC;AAGzC;;;GAGG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,gCAAgB;IAClD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAClB,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM;QACX,OAAO,CAAC,GAAQ,EAAE,IAAsB,EAAE,IAA0B,EAAE,EAAE;YACtE,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;YACjB,IAAI,EAAE,CAAC;QACT,CAAC,CAAC;IACJ,CAAC;CACF,CAAA;AAhBY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,eAAU,EAAC,gCAAgB,CAAC;;GAChB,cAAc,CAgB1B"}
|
package/lib/cjs/server.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ import './transformers/index.js';
|
|
|
12
12
|
import './middlewares/ResponseTime.js';
|
|
13
13
|
import './middlewares/RequestId.js';
|
|
14
14
|
import './middlewares/RealIp.js';
|
|
15
|
+
import './middlewares/ReqStorage.js';
|
|
15
16
|
export declare class HttpServer extends AsyncService {
|
|
16
17
|
protected Configuration: Configuration;
|
|
17
18
|
protected Container: IContainer;
|
|
@@ -28,13 +29,21 @@ export declare class HttpServer extends AsyncService {
|
|
|
28
29
|
*/
|
|
29
30
|
protected _httpServer: Http;
|
|
30
31
|
protected _httpsServer: Https;
|
|
31
|
-
|
|
32
|
+
get Server(): Http | Https;
|
|
32
33
|
/**
|
|
33
34
|
* Logger for this module
|
|
34
35
|
*/
|
|
35
36
|
protected Log: Log;
|
|
36
37
|
constructor();
|
|
37
38
|
resolve(): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Create http or https server
|
|
41
|
+
*/
|
|
42
|
+
private _createServer;
|
|
43
|
+
/**
|
|
44
|
+
* Server static files
|
|
45
|
+
*/
|
|
46
|
+
private _serverStaticFiles;
|
|
38
47
|
/**
|
|
39
48
|
* Starts http server & express
|
|
40
49
|
*/
|
package/lib/cjs/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAA8D,MAAM,aAAa,CAAC;AACnH,OAAO,EAAU,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAE,MAAM,IAAI,IAAI,EAAoC,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,MAAM,IAAI,KAAK,EAAqC,MAAM,OAAO,CAAC;AAI3E,OAAO,OAAO,EAAE,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIlD,OAAO,EAAE,gBAAgB,EAAyD,wBAAwB,EAA4B,MAAM,iBAAiB,CAAC;AAE9J,OAAO,yBAAyB,CAAC;AACjC,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAA8D,MAAM,aAAa,CAAC;AACnH,OAAO,EAAU,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAE,MAAM,IAAI,IAAI,EAAoC,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,MAAM,IAAI,KAAK,EAAqC,MAAM,OAAO,CAAC;AAI3E,OAAO,OAAO,EAAE,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIlD,OAAO,EAAE,gBAAgB,EAAyD,wBAAwB,EAA4B,MAAM,iBAAiB,CAAC;AAE9J,OAAO,yBAAyB,CAAC;AACjC,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,yBAAyB,CAAC;AACjC,OAAO,6BAA6B,CAAC;AAErC,qBAEa,UAAW,SAAQ,YAAY;IAE1C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC;IAGhC,SAAS,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAG1C,SAAS,CAAC,UAAU,EAAE,wBAAwB,CAAC;IAG/C,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;IAKhC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC;IAC5B,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;IAE9B,IAAW,MAAM,IAAI,IAAI,GAAG,KAAK,CAEhC;IAED;;OAEG;IAEH,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;;IAMN,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwDrC;;OAEG;IACH,OAAO,CAAC,aAAa;IAuBrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;OAEG;IACI,KAAK;IA2BL,IAAI;IAMX;;;;OAIG;IACI,GAAG,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAI5C;;OAEG;IACH,SAAS,CAAC,cAAc;IA2BxB;;OAEG;IACH,SAAS,CAAC,YAAY;CAiEvB"}
|
package/lib/cjs/server.js
CHANGED
|
@@ -33,6 +33,7 @@ require("./transformers/index.js");
|
|
|
33
33
|
require("./middlewares/ResponseTime.js");
|
|
34
34
|
require("./middlewares/RequestId.js");
|
|
35
35
|
require("./middlewares/RealIp.js");
|
|
36
|
+
require("./middlewares/ReqStorage.js");
|
|
36
37
|
let HttpServer = class HttpServer extends di_1.AsyncService {
|
|
37
38
|
get Server() {
|
|
38
39
|
return this.HttpsEnabled ? this._httpsServer : this._httpServer;
|
|
@@ -42,6 +43,10 @@ let HttpServer = class HttpServer extends di_1.AsyncService {
|
|
|
42
43
|
}
|
|
43
44
|
async resolve() {
|
|
44
45
|
this.Express = (0, express_1.default)();
|
|
46
|
+
this.Middlewares = this.Middlewares.sort((a, b) => {
|
|
47
|
+
return a.Order - b.Order;
|
|
48
|
+
});
|
|
49
|
+
this._createServer();
|
|
45
50
|
const f = di_1.DI.resolve('__file_provider__', ['__fs_http_response_templates__']);
|
|
46
51
|
if (!f) {
|
|
47
52
|
this.Log.info(`No fs provider for __fs_http_response_templates__ registered, response templates will not be available.`);
|
|
@@ -76,14 +81,6 @@ let HttpServer = class HttpServer extends di_1.AsyncService {
|
|
|
76
81
|
};
|
|
77
82
|
this.use((0, cors_1.default)(corsOptions));
|
|
78
83
|
}
|
|
79
|
-
// create storage prop in req
|
|
80
|
-
this.use((req, _res, next) => {
|
|
81
|
-
req.storage = {};
|
|
82
|
-
next();
|
|
83
|
-
});
|
|
84
|
-
this.Middlewares = this.Middlewares.sort((a, b) => {
|
|
85
|
-
return a.Order - b.Order;
|
|
86
|
-
});
|
|
87
84
|
// register other server middlewares
|
|
88
85
|
this.Middlewares.forEach((m) => {
|
|
89
86
|
const f = m.before();
|
|
@@ -92,9 +89,32 @@ let HttpServer = class HttpServer extends di_1.AsyncService {
|
|
|
92
89
|
this.use(f);
|
|
93
90
|
}
|
|
94
91
|
});
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
92
|
+
this._serverStaticFiles();
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Create http or https server
|
|
96
|
+
*/
|
|
97
|
+
_createServer() {
|
|
98
|
+
if (this.HttpsEnabled) {
|
|
99
|
+
this.Log.info(`Using https key file ${this.HttpConfig.ssl.key}`);
|
|
100
|
+
this.Log.info(`Using https cert file ${this.HttpConfig.ssl.cert}`);
|
|
101
|
+
const key = fs_2.default.readFileSync(this.HttpConfig.ssl.key);
|
|
102
|
+
const cert = fs_2.default.readFileSync(this.HttpConfig.ssl.cert);
|
|
103
|
+
this.Log.info(`HTTPS enabled !`);
|
|
104
|
+
this._httpsServer = (0, https_1.createServer)({
|
|
105
|
+
key: key,
|
|
106
|
+
cert: cert,
|
|
107
|
+
}, this.Express);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
this.Log.info(`HTTP enabled !`);
|
|
111
|
+
this._httpServer = (0, http_1.createServer)(this.Express);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Server static files
|
|
116
|
+
*/
|
|
117
|
+
_serverStaticFiles() {
|
|
98
118
|
lodash_1.default.uniq(this.HttpConfig.Static).forEach((s) => {
|
|
99
119
|
if (!(0, fs_1.existsSync)(s.Path)) {
|
|
100
120
|
this.Log.warn(`static file path ${s.Path} not exists`);
|
|
@@ -120,21 +140,6 @@ let HttpServer = class HttpServer extends di_1.AsyncService {
|
|
|
120
140
|
this.use(f);
|
|
121
141
|
}
|
|
122
142
|
});
|
|
123
|
-
if (this.HttpsEnabled) {
|
|
124
|
-
this.Log.info(`Using https key file ${this.HttpConfig.ssl.key}`);
|
|
125
|
-
this.Log.info(`Using https cert file ${this.HttpConfig.ssl.cert}`);
|
|
126
|
-
const key = fs_2.default.readFileSync(this.HttpConfig.ssl.key);
|
|
127
|
-
const cert = fs_2.default.readFileSync(this.HttpConfig.ssl.cert);
|
|
128
|
-
this._httpsServer = (0, https_1.createServer)({
|
|
129
|
-
key: key,
|
|
130
|
-
cert: cert,
|
|
131
|
-
}, this.Express);
|
|
132
|
-
this.Log.info(`HTTPS enabled !`);
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
this._httpServer = (0, http_1.createServer)(this.Express);
|
|
136
|
-
this.Log.info(`HTTP enabled !`);
|
|
137
|
-
}
|
|
138
143
|
this.Server.listen(this.HttpConfig.port, () => {
|
|
139
144
|
this.Log.info(`Server started at port ${this.HttpConfig.port}`);
|
|
140
145
|
res();
|
package/lib/cjs/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,oCAAmH;AACnH,0DAA+D;AAC/D,sCAA2C;AAE3C,oDAAuD;AACvD,kDAA+C;AAC/C,kCAAgC;AAEhC,+BAAwE;AACxE,iCAA2E;AAC3E,2BAAgC;AAChC,gDAAwB;AACxB,gEAAwC;AACxC,sDAAkD;AAClD,oDAAuB;AACvB,4CAAoB;AAEpB,mDAA8J;AAC9J,0DAA0D;AAC1D,mCAAiC;AACjC,yCAAuC;AACvC,sCAAoC;AACpC,mCAAiC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Response, NextFunction } from 'express';
|
|
2
|
+
import { ServerMiddleware, Request as sRequest } from '../interfaces.js';
|
|
3
|
+
import * as express from 'express';
|
|
4
|
+
/**
|
|
5
|
+
* Create expressjs request storage prop.
|
|
6
|
+
* Other middlewares / modules could use it for per request storage app wise
|
|
7
|
+
*/
|
|
8
|
+
export declare class RequestStorage extends ServerMiddleware {
|
|
9
|
+
constructor();
|
|
10
|
+
after(): (_req: sRequest, _res: express.Response, next: express.NextFunction) => void;
|
|
11
|
+
before(): (req: sRequest, res: Response<any, Record<string, any>>, next: NextFunction) => void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ReqStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReqStorage.d.ts","sourceRoot":"","sources":["../../../src/middlewares/ReqStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAInC;;;GAGG;AACH,qBACa,cAAe,SAAQ,gBAAgB;;IAM3C,KAAK,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,KAAK,IAAI;IAIrF,MAAM,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI;CAMtG"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { ServerMiddleware } from '../interfaces.js';
|
|
11
|
+
import { Injectable } from '@spinajs/di';
|
|
12
|
+
/**
|
|
13
|
+
* Create expressjs request storage prop.
|
|
14
|
+
* Other middlewares / modules could use it for per request storage app wise
|
|
15
|
+
*/
|
|
16
|
+
let RequestStorage = class RequestStorage extends ServerMiddleware {
|
|
17
|
+
constructor() {
|
|
18
|
+
super();
|
|
19
|
+
this.Order = -2;
|
|
20
|
+
}
|
|
21
|
+
after() {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
before() {
|
|
25
|
+
return (req, _res, next) => {
|
|
26
|
+
req.storage = {};
|
|
27
|
+
next();
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
RequestStorage = __decorate([
|
|
32
|
+
Injectable(ServerMiddleware),
|
|
33
|
+
__metadata("design:paramtypes", [])
|
|
34
|
+
], RequestStorage);
|
|
35
|
+
export { RequestStorage };
|
|
36
|
+
//# sourceMappingURL=ReqStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReqStorage.js","sourceRoot":"","sources":["../../../src/middlewares/ReqStorage.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,gBAAgB,EAAuB,MAAM,kBAAkB,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC;;;GAGG;AAEI,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,gBAAgB;IAClD;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAClB,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM;QACX,OAAO,CAAC,GAAQ,EAAE,IAAsB,EAAE,IAA0B,EAAE,EAAE;YACtE,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;YACjB,IAAI,EAAE,CAAC;QACT,CAAC,CAAC;IACJ,CAAC;CACF,CAAA;AAhBY,cAAc;IAD1B,UAAU,CAAC,gBAAgB,CAAC;;GAChB,cAAc,CAgB1B"}
|
package/lib/mjs/server.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ import './transformers/index.js';
|
|
|
12
12
|
import './middlewares/ResponseTime.js';
|
|
13
13
|
import './middlewares/RequestId.js';
|
|
14
14
|
import './middlewares/RealIp.js';
|
|
15
|
+
import './middlewares/ReqStorage.js';
|
|
15
16
|
export declare class HttpServer extends AsyncService {
|
|
16
17
|
protected Configuration: Configuration;
|
|
17
18
|
protected Container: IContainer;
|
|
@@ -28,13 +29,21 @@ export declare class HttpServer extends AsyncService {
|
|
|
28
29
|
*/
|
|
29
30
|
protected _httpServer: Http;
|
|
30
31
|
protected _httpsServer: Https;
|
|
31
|
-
|
|
32
|
+
get Server(): Http | Https;
|
|
32
33
|
/**
|
|
33
34
|
* Logger for this module
|
|
34
35
|
*/
|
|
35
36
|
protected Log: Log;
|
|
36
37
|
constructor();
|
|
37
38
|
resolve(): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Create http or https server
|
|
41
|
+
*/
|
|
42
|
+
private _createServer;
|
|
43
|
+
/**
|
|
44
|
+
* Server static files
|
|
45
|
+
*/
|
|
46
|
+
private _serverStaticFiles;
|
|
38
47
|
/**
|
|
39
48
|
* Starts http server & express
|
|
40
49
|
*/
|
package/lib/mjs/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAA8D,MAAM,aAAa,CAAC;AACnH,OAAO,EAAU,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAE,MAAM,IAAI,IAAI,EAAoC,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,MAAM,IAAI,KAAK,EAAqC,MAAM,OAAO,CAAC;AAI3E,OAAO,OAAO,EAAE,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIlD,OAAO,EAAE,gBAAgB,EAAyD,wBAAwB,EAA4B,MAAM,iBAAiB,CAAC;AAE9J,OAAO,yBAAyB,CAAC;AACjC,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAA8D,MAAM,aAAa,CAAC;AACnH,OAAO,EAAU,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAU,GAAG,EAAE,MAAM,cAAc,CAAC;AAI3C,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAE,MAAM,IAAI,IAAI,EAAoC,MAAM,MAAM,CAAC;AACxE,OAAO,EAAE,MAAM,IAAI,KAAK,EAAqC,MAAM,OAAO,CAAC;AAI3E,OAAO,OAAO,EAAE,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIlD,OAAO,EAAE,gBAAgB,EAAyD,wBAAwB,EAA4B,MAAM,iBAAiB,CAAC;AAE9J,OAAO,yBAAyB,CAAC;AACjC,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,yBAAyB,CAAC;AACjC,OAAO,6BAA6B,CAAC;AAErC,qBAEa,UAAW,SAAQ,YAAY;IAE1C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAGvC,SAAS,CAAC,SAAS,EAAE,UAAU,CAAC;IAGhC,SAAS,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAG1C,SAAS,CAAC,UAAU,EAAE,wBAAwB,CAAC;IAG/C,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC;IAKhC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC;IAC5B,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;IAE9B,IAAW,MAAM,IAAI,IAAI,GAAG,KAAK,CAEhC;IAED;;OAEG;IAEH,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;;IAMN,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwDrC;;OAEG;IACH,OAAO,CAAC,aAAa;IAuBrB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;OAEG;IACI,KAAK;IA2BL,IAAI;IAMX;;;;OAIG;IACI,GAAG,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAI5C;;OAEG;IACH,SAAS,CAAC,cAAc;IA2BxB;;OAEG;IACH,SAAS,CAAC,YAAY;CAiEvB"}
|
package/lib/mjs/server.js
CHANGED
|
@@ -27,6 +27,7 @@ import './transformers/index.js';
|
|
|
27
27
|
import './middlewares/ResponseTime.js';
|
|
28
28
|
import './middlewares/RequestId.js';
|
|
29
29
|
import './middlewares/RealIp.js';
|
|
30
|
+
import './middlewares/ReqStorage.js';
|
|
30
31
|
let HttpServer = class HttpServer extends AsyncService {
|
|
31
32
|
get Server() {
|
|
32
33
|
return this.HttpsEnabled ? this._httpsServer : this._httpServer;
|
|
@@ -36,6 +37,10 @@ let HttpServer = class HttpServer extends AsyncService {
|
|
|
36
37
|
}
|
|
37
38
|
async resolve() {
|
|
38
39
|
this.Express = Express();
|
|
40
|
+
this.Middlewares = this.Middlewares.sort((a, b) => {
|
|
41
|
+
return a.Order - b.Order;
|
|
42
|
+
});
|
|
43
|
+
this._createServer();
|
|
39
44
|
const f = DI.resolve('__file_provider__', ['__fs_http_response_templates__']);
|
|
40
45
|
if (!f) {
|
|
41
46
|
this.Log.info(`No fs provider for __fs_http_response_templates__ registered, response templates will not be available.`);
|
|
@@ -70,14 +75,6 @@ let HttpServer = class HttpServer extends AsyncService {
|
|
|
70
75
|
};
|
|
71
76
|
this.use(cors(corsOptions));
|
|
72
77
|
}
|
|
73
|
-
// create storage prop in req
|
|
74
|
-
this.use((req, _res, next) => {
|
|
75
|
-
req.storage = {};
|
|
76
|
-
next();
|
|
77
|
-
});
|
|
78
|
-
this.Middlewares = this.Middlewares.sort((a, b) => {
|
|
79
|
-
return a.Order - b.Order;
|
|
80
|
-
});
|
|
81
78
|
// register other server middlewares
|
|
82
79
|
this.Middlewares.forEach((m) => {
|
|
83
80
|
const f = m.before();
|
|
@@ -86,9 +83,32 @@ let HttpServer = class HttpServer extends AsyncService {
|
|
|
86
83
|
this.use(f);
|
|
87
84
|
}
|
|
88
85
|
});
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
86
|
+
this._serverStaticFiles();
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Create http or https server
|
|
90
|
+
*/
|
|
91
|
+
_createServer() {
|
|
92
|
+
if (this.HttpsEnabled) {
|
|
93
|
+
this.Log.info(`Using https key file ${this.HttpConfig.ssl.key}`);
|
|
94
|
+
this.Log.info(`Using https cert file ${this.HttpConfig.ssl.cert}`);
|
|
95
|
+
const key = fs.readFileSync(this.HttpConfig.ssl.key);
|
|
96
|
+
const cert = fs.readFileSync(this.HttpConfig.ssl.cert);
|
|
97
|
+
this.Log.info(`HTTPS enabled !`);
|
|
98
|
+
this._httpsServer = HttpsCreateServer({
|
|
99
|
+
key: key,
|
|
100
|
+
cert: cert,
|
|
101
|
+
}, this.Express);
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
this.Log.info(`HTTP enabled !`);
|
|
105
|
+
this._httpServer = HttpCreateServer(this.Express);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Server static files
|
|
110
|
+
*/
|
|
111
|
+
_serverStaticFiles() {
|
|
92
112
|
_.uniq(this.HttpConfig.Static).forEach((s) => {
|
|
93
113
|
if (!existsSync(s.Path)) {
|
|
94
114
|
this.Log.warn(`static file path ${s.Path} not exists`);
|
|
@@ -114,21 +134,6 @@ let HttpServer = class HttpServer extends AsyncService {
|
|
|
114
134
|
this.use(f);
|
|
115
135
|
}
|
|
116
136
|
});
|
|
117
|
-
if (this.HttpsEnabled) {
|
|
118
|
-
this.Log.info(`Using https key file ${this.HttpConfig.ssl.key}`);
|
|
119
|
-
this.Log.info(`Using https cert file ${this.HttpConfig.ssl.cert}`);
|
|
120
|
-
const key = fs.readFileSync(this.HttpConfig.ssl.key);
|
|
121
|
-
const cert = fs.readFileSync(this.HttpConfig.ssl.cert);
|
|
122
|
-
this._httpsServer = HttpsCreateServer({
|
|
123
|
-
key: key,
|
|
124
|
-
cert: cert,
|
|
125
|
-
}, this.Express);
|
|
126
|
-
this.Log.info(`HTTPS enabled !`);
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
this._httpServer = HttpCreateServer(this.Express);
|
|
130
|
-
this.Log.info(`HTTP enabled !`);
|
|
131
|
-
}
|
|
132
137
|
this.Server.listen(this.HttpConfig.port, () => {
|
|
133
138
|
this.Log.info(`Server started at port ${this.HttpConfig.port}`);
|
|
134
139
|
res();
|
package/lib/mjs/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAc,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAe,MAAM,aAAa,CAAC;AACnH,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,wBAAwB,CAAC;AAEhC,OAAO,EAAkB,YAAY,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAC;AACxE,OAAO,EAAmB,YAAY,IAAI,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,YAAY,MAAM,cAAc,CAAC;AACxC,OAAO,OAA2B,MAAM,SAAS,CAAC;AAClD,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAoB,gBAAgB,EAAE,iBAAiB,EAAsD,MAAM,iBAAiB,CAAC;AAC9J,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,yBAAyB,CAAC;AACjC,OAAO,+BAA+B,CAAC;AACvC,OAAO,4BAA4B,CAAC;AACpC,OAAO,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|