@@ -61,6 +61,7 @@ class TokenHandler {
6161 this . allowExtendedTokenAttributes = options . allowExtendedTokenAttributes ;
6262 this . requireClientAuthentication = options . requireClientAuthentication || { } ;
6363 this . alwaysIssueNewRefreshToken = options . alwaysIssueNewRefreshToken !== false ;
64+ this . requestProcessor = options . requestProcessor ?? ( ( req ) => req . body ) ;
6465 }
6566
6667 /**
@@ -85,8 +86,15 @@ class TokenHandler {
8586 }
8687
8788 try {
88- const client = await this . getClient ( request , response ) ;
89- const data = await this . handleGrantType ( request , client ) ;
89+ const body = this . requestProcessor ( request ) ?? request . body ;
90+ const client = await this . getClient ( {
91+ ...request ,
92+ body,
93+ } , response ) ;
94+ const data = await this . handleGrantType ( {
95+ ...request ,
96+ body,
97+ } , client ) ;
9098 const model = new TokenModel ( data , { allowExtendedTokenAttributes : this . allowExtendedTokenAttributes } ) ;
9199 const tokenType = this . getTokenType ( model ) ;
92100
@@ -247,7 +255,7 @@ class TokenHandler {
247255 accessTokenLifetime : accessTokenLifetime ,
248256 model : this . model ,
249257 refreshTokenLifetime : refreshTokenLifetime ,
250- alwaysIssueNewRefreshToken : this . alwaysIssueNewRefreshToken
258+ alwaysIssueNewRefreshToken : this . alwaysIssueNewRefreshToken ,
251259 } ;
252260
253261 return new Type ( options ) . handle ( request , client ) ;
0 commit comments