badmfck-api-server 1.8.9 → 1.9.0
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.
@@ -1,7 +1,7 @@
|
|
1
1
|
import { Response } from 'express';
|
2
2
|
import { BaseService, IBaseService } from './BaseService';
|
3
3
|
import { IBaseEndpoint } from './BaseEndpoint';
|
4
|
-
import { TransferPacketVO } from './structures/Interfaces';
|
4
|
+
import { HTTPRequestVO, TransferPacketVO } from './structures/Interfaces';
|
5
5
|
import { Req } from "badmfck-signal";
|
6
6
|
export interface APIServiceNetworkLogItem {
|
7
7
|
id: number;
|
@@ -25,7 +25,7 @@ export interface APIServiceOptions {
|
|
25
25
|
onError?: ((...rest: any[]) => void) | null;
|
26
26
|
isProductionEnvironment: boolean;
|
27
27
|
interceptor?: IBaseEndpoint;
|
28
|
-
postproducer?: (
|
28
|
+
postproducer?: (req: HTTPRequestVO | undefined | null, res: Response, data: TransferPacketVO<any>, requestTime: number, endpoint?: string, log?: APIServiceNetworkLogItem | null) => Promise<TransferPacketVO>;
|
29
29
|
monitor?: {
|
30
30
|
login: string;
|
31
31
|
password: string;
|
@@ -50,5 +50,5 @@ export declare class APIService extends BaseService {
|
|
50
50
|
netLog: APIServiceNetworkLogItem[];
|
51
51
|
constructor(options?: APIServiceOptions | null);
|
52
52
|
init(): Promise<void>;
|
53
|
-
sendResponse(res: Response, data: TransferPacketVO<any>, requestTime: number, endpoint?: string, log?: APIServiceNetworkLogItem | null): Promise<void>;
|
53
|
+
sendResponse(res: Response, data: TransferPacketVO<any>, requestTime: number, endpoint?: string, log?: APIServiceNetworkLogItem | null, req?: HTTPRequestVO): Promise<void>;
|
54
54
|
}
|
@@ -193,7 +193,7 @@ class APIService extends BaseService_1.BaseService {
|
|
193
193
|
if (this.options.interceptor) {
|
194
194
|
interceptorResult = await this.options.interceptor.execute(httpRequest);
|
195
195
|
if (interceptorResult.error && !j.allowInterceptorError) {
|
196
|
-
this.sendResponse(res, interceptorResult, tme, ep, log);
|
196
|
+
this.sendResponse(res, interceptorResult, tme, ep, log, httpRequest);
|
197
197
|
return;
|
198
198
|
}
|
199
199
|
httpRequest.interceptorResult = interceptorResult;
|
@@ -203,7 +203,7 @@ class APIService extends BaseService_1.BaseService {
|
|
203
203
|
httpRequest.precheck = { data: this.options.monitor };
|
204
204
|
const precheck = await i.precheck(httpRequest);
|
205
205
|
if (precheck && precheck.error) {
|
206
|
-
this.sendResponse(res, precheck, tme, ep, log);
|
206
|
+
this.sendResponse(res, precheck, tme, ep, log, httpRequest);
|
207
207
|
return;
|
208
208
|
}
|
209
209
|
httpRequest.precheck = precheck;
|
@@ -222,10 +222,10 @@ class APIService extends BaseService_1.BaseService {
|
|
222
222
|
message: "Internal server error",
|
223
223
|
details: `${e}`
|
224
224
|
}
|
225
|
-
}, tme, ep, log);
|
225
|
+
}, tme, ep, log, httpRequest);
|
226
226
|
return;
|
227
227
|
}
|
228
|
-
this.sendResponse(res, result, tme, ep, log);
|
228
|
+
this.sendResponse(res, result, tme, ep, log, httpRequest);
|
229
229
|
};
|
230
230
|
execute();
|
231
231
|
});
|
@@ -277,10 +277,10 @@ class APIService extends BaseService_1.BaseService {
|
|
277
277
|
(0, LogService_1.logCrit)('${APIService.js}', 'API Service started at: ' + this.options.port + ", with base endpoint:" + this.options.baseEndPoint + ", ver.: " + this.version);
|
278
278
|
});
|
279
279
|
}
|
280
|
-
async sendResponse(res, data, requestTime, endpoint, log) {
|
280
|
+
async sendResponse(res, data, requestTime, endpoint, log, req) {
|
281
281
|
if (this.options.postproducer) {
|
282
282
|
try {
|
283
|
-
data = await this.options.postproducer(
|
283
|
+
data = await this.options.postproducer(req, res, data, requestTime, endpoint, log);
|
284
284
|
}
|
285
285
|
catch (e) {
|
286
286
|
(0, LogService_1.logError)("Postproducer error", e);
|