File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -416,16 +416,21 @@ export const Utils = {
416416 if ( parserRequest ) {
417417 logger . debug ( "parseRequest: START" ) ;
418418 if ( typeof parserRequest === "object" ) {
419- const { promise, reject, resolve } = Utils . plugin . promiseWithResolver < any > ( ) ;
420- const next = ( error ?: any ) => resolve ( error ) ;
421419 let parserFunc : UniversalApiParserFunction [ ] = [ ] ;
422420 if ( ! Array . isArray ( parserRequest . parser ) ) {
423421 parserFunc . push ( parserRequest . parser ) ;
424422 } else {
425423 parserFunc = parserRequest . parser ;
426424 }
427- Promise . all ( parserFunc . map ( callbackfn => callbackfn ( request , res , next ) ) ) . then ( ( ) => resolve ( "done" ) ) . catch ( reject ) ;
428- await promise ;
425+ for ( const parserFn of parserFunc ) {
426+ await new Promise < void > ( ( resolve , reject ) => {
427+ const next = ( error ?: any ) => error ? reject ( error ) : resolve ( ) ;
428+ const result = parserFn ( request , res , next ) ;
429+ if ( result && typeof ( result as any ) . then === "function" ) {
430+ ( result as Promise < void > ) . then ( ( ) => resolve ( ) , reject ) ;
431+ }
432+ } ) ;
433+ }
429434 const { body, files, query } = parserRequest . transform ( request ) ;
430435 body != undefined && ( request . body = body ) ;
431436 files != undefined && ( request . files = files ) ;
You can’t perform that action at this time.
0 commit comments