@@ -578,15 +578,17 @@ class ParseLiveQueryServer {
578578 return false ;
579579 } ) ;
580580 }
581- async getAuthFromClient ( client : any , res : any , requestId : number ) {
581+ async getAuthFromClient ( client : any , res : any , requestId : number , sessionToken : string ) {
582582 const getSessionFromClient = ( ) => {
583583 const subscriptionInfo = client . getSubscriptionInfo ( requestId ) ;
584584 if ( typeof subscriptionInfo === 'undefined' ) {
585585 return client . sessionToken ;
586586 }
587587 return subscriptionInfo . sessionToken || client . sessionToken ;
588588 } ;
589- const sessionToken = getSessionFromClient ( ) ;
589+ if ( ! sessionToken ) {
590+ sessionToken = getSessionFromClient ( ) ;
591+ }
590592 const { auth } = await this . getAuthForSessionToken ( sessionToken ) ;
591593 if ( auth && auth . user ) {
592594 res . user = auth . user ;
@@ -645,10 +647,7 @@ class ParseLiveQueryServer {
645647 } ;
646648 const trigger = getTrigger ( '@Connect' , 'beforeConnect' , Parse . applicationId ) ;
647649 if ( trigger ) {
648- const { auth } = await this . getAuthForSessionToken ( req . sessionToken ) ;
649- if ( auth && auth . user ) {
650- req . user = auth . user ;
651- }
650+ const auth = await this . getAuthFromClient ( client , req , request . requestId , req . sessionToken ) ;
652651 await runTrigger ( trigger , `beforeConnect.@Connect` , req , auth ) ;
653652 }
654653 parseWebsocket . clientId = clientId ;
@@ -706,10 +705,12 @@ class ParseLiveQueryServer {
706705 try {
707706 const trigger = getTrigger ( className , 'beforeSubscribe' , Parse . applicationId ) ;
708707 if ( trigger ) {
709- const { auth } = await this . getAuthForSessionToken ( request . sessionToken ) ;
710- if ( auth && auth . user ) {
711- request . user = auth . user ;
712- }
708+ const auth = await this . getAuthFromClient (
709+ client ,
710+ request ,
711+ request . requestId ,
712+ request . sessionToken
713+ ) ;
713714
714715 const parseQuery = new Parse . Query ( className ) ;
715716 parseQuery . withJSON ( request . query ) ;
0 commit comments