@@ -91,38 +91,35 @@ export async function getTernSecureAuthData(
9191 return authObjectToSerializable ( { ...initialState , ...authObject } ) ;
9292}
9393
94- export async function getAuthDataFromRequest ( req : RequestLike ) : Promise < AuthObject & Aobj > {
94+
95+ /**
96+ * Given the issue ( https://github.com/firebase/firebase-js-sdk/issues/9423 ) that affects the authenticateRequest function,
97+ * change from Promise<AuthObject & Aobj> to Promise<AuthObject> only. no firebaseserverapp user object needed.
98+ * @param req
99+ * @returns
100+ */
101+ export async function getAuthDataFromRequest ( req : RequestLike ) : Promise < AuthObject > {
95102 const authStatus = getAuthKeyFromRequest ( req , "AuthStatus" ) ;
96103 const authToken = getAuthKeyFromRequest ( req , "AuthToken" ) ;
97104
98105 if ( ! authStatus || authStatus !== AuthStatus . SignedIn ) {
99106 return {
100107 ...signedOutAuthObject ( ) ,
101- user : null ,
102- userId : null
103108 }
104109 }
105110
106- const firebaseUser = await authenticateRequest (
107- authToken as string ,
108- req as any
109- ) ;
110- if ( ! firebaseUser || ! firebaseUser . claims ) {
111- return {
112- ...signedOutAuthObject ( ) ,
113- user : null ,
114- userId : null
115- }
116- }
117- const { user } = firebaseUser ;
118111 const jwt = ternDecodeJwt ( authToken as string ) ;
119112 const authObject = signedInAuthObject ( authToken as string , jwt . payload ) ;
120113 return {
121114 ...authObject ,
122- user : user || null ,
123115 } ;
124116}
125117
118+ /***
119+ * InitializeServerApp seems to have issue with Refer header. firebase doesnt have a fix yet.
120+ * see link https://github.com/firebase/firebase-js-sdk/issues/9423
121+ * we might need to use this feature in the future when firebase fix this issue.
122+ */
126123const authenticateRequest = async (
127124 token : string ,
128125 request : Request ,
0 commit comments