Middleware
Common Parameter Middleware Async Example
const { commonParamatersMiddlewareAsync } = require ( "nodejs-middleware" ) //CommonJS
import { commonParamatersMiddlewareAsync } from "nodejs-middleware" //Module
async function one ( req , res , next , returns ) {
console . log ( req , res , next , returns )
await asyncFunc ( )
console . log ( "one async" )
return next ( 2222 )
}
async function two ( next_data , req , res , next , returns ) {
console . log ( 2 , next_data , req , res , next , returns )
await asyncFunc ( )
console . log ( "two async" )
return next ( )
}
async function three ( next_data , req , res , next , returns ) {
console . log ( 3 , next_data , req , res , next , returns )
await asyncFunc ( )
console . log ( "three async" )
return returns ( 100 , 2 , 4 , 5 , 6 , 4 )
}
function asyncFunc ( ) {
return new Promise ( ( resolve ) => {
setTimeout ( ( ) => {
console . log ( "waited" )
return resolve ( )
} , 2000 ) ;
} )
}
async function testing ( ) {
const result = await commonParamatersMiddlewareAsync ( one , two , three ) ( "req" , "res" )
console . log ( result )
console . log ( "finish" )
}
testing ( )
//Output
/*
req res [Function: next] [Function: returns]
waited
one async
2 2222 req res [Function: next] [Function: returns]
waited
two async
3 2222 req res [Function: next] [Function: returns]
waited
three async
[ 100, 2, 4, 5, 6, 4 ]
finish
*/
Common Parameter Middleware Sync Example
const { commonParamatersMiddlewareSync } = require ( "nodejs-middleware" ) //CommonJS
import { commonParamatersMiddlewareSync } from "nodejs-middleware" //Module
function one ( req , res , next , returns ) {
console . log ( 1 , req , res , next , returns )
return next ( 222222 )
}
function two ( next_data , req , res , next , returns ) {
console . log ( 2 , next_data , req , res , next , returns )
next ( )
}
function three ( data , req , res , next , returns ) {
console . log ( 3 , data , req , res , next , returns )
return returns ( 100 , 2 , 4 , 5 , 6 , 4 )
}
function testing ( ) {
const result = commonParamatersMiddlewareSync ( one , two , three ) ( "req" , "res" )
console . log ( result )
console . log ( "finish" )
}
testing ( )
//Output
/**
1 req res [Function: next] [Function: returns]
2 222222 req res [Function: next] [Function: returns]
3 222222 req res [Function: next] [Function: returns]
[ 100, 2, 4, 5, 6, 4 ]
finish
*/
Sync Example
const { middlewareSync } = require ( "nodejs-middleware" ) //CommonJS
import { middlewareSync } from "nodejs-middleware" //Module
function one ( first , next , returns ) {
console . log ( 1 , first , next , returns )
return next ( 222222 )
}
function two ( other , second , next , returns ) {
console . log ( 2 , other , second , next , returns )
return next ( )
}
function three ( data , next , returns ) {
console . log ( 3 , data , next , returns )
return returns ( 100 , 2 , 4 , 5 , 6 , 4 )
}
function testing ( ) {
const result = middlewareSync ( one , two , three ) ( 10 , 20 , 30 )
console . log ( result ) //output -> [ 100, 2, 4, 5, 6, 4 ]
console . log ( "finish" )
}
testing ( )
//Output
/*
1 10 [Function: next] [Function: returns]
2 222222 20 [Function: next] [Function: returns]
3 30 [Function: next] [Function: returns]
[ 100, 2, 4, 5, 6, 4 ]
finish
*/
Async Example
const { middlewareAsync } = require ( "nodejs-middleware" ) //CommonJS
import { middlewareAsync } from "nodejs-middleware" //Module
async function one ( first , next , returns ) {
console . log ( 1 , first , next , returns )
await asyncFunc ( )
console . log ( "one async" )
return next ( 2222 )
}
async function two ( other , second , next , returns ) {
console . log ( 2 , other , second , next , returns )
await asyncFunc ( )
console . log ( "two async" )
return next ( )
}
async function three ( data , next , returns ) {
console . log ( 3 , data , next , returns )
await asyncFunc ( )
console . log ( "three async" )
return returns ( 100 , 2 , 4 , 5 , 6 , 4 )
}
function asyncFunc ( ) {
return new Promise ( ( resolve ) => {
setTimeout ( ( ) => {
console . log ( "waited" )
return resolve ( )
} , 2000 ) ;
} )
}
async function testing ( ) {
const result = await middlewareAsync ( one , two , three ) ( 10 , 20 , 30 )
console . log ( result ) //output -> [ 100, 2, 4, 5, 6, 4 ]
console . log ( "finish" )
}
testing ( )
//Output
/*
1 10 [Function: next] [Function: returns]
waited
one async
2 2222 20 [Function: next] [Function: returns]
waited
two async
3 30 [Function: next] [Function: returns]
waited
three async
[ 100, 2, 4, 5, 6, 4 ]
finish
*/