link: new ApolloLink((operation, forward) => { return forward(operation).map(response => { const context = operation.getContext(); const { response: { headers },
forward(operation).map(response => { const { response: { headers } } = operation.getContext() if (headers) { const token = headers.get('x-token') // const refreshToken = headers.get('x-refresh-token') if (token) { localStorage.setItem('token', token) } /* UNCOMMENT FOR REFRESH TOKENS if (refreshToken) { localStorage.setItem('refreshToken', refreshToken) } */ } return response })
forward(operation).map(response => { const context = operation.getContext() const { response: { headers } } = context if (headers) { const token = headers.get("x-token") const refresh_token = headers.get("x-refresh-token") if (token) { localStorage.setItem(AUTH_TOKEN, token) localStorage.setItem(REFRESH_TOKEN, refresh_token) } } // //Se puede manipular datos cuando llegan de graphql // if (response.data.user.lastLoginDate) { // // } //redireccionar en caso de error if(response.errors && response.errors.length>0){ if(response.errors[0].message==='Not authenticated'){ localStorage.removeItem('token'); localStorage.removeItem('refreshToken'); window.location = "/login" } } return response; })
forward( operation ).map( response => { /** * Check for session header and update session in local storage accordingly. */ const context = operation.getContext(); const { response: { headers } } = context; const session = headers.get( "woocommerce-session" ); if ( session ) { // Remove session data if session destroyed. if ( "false" === session ) { localStorage.removeItem( "woo-session" ); // Update session new data if changed. } else if ( localStorage.getItem( "woo-session" ) !== session ) { localStorage.setItem( "woo-session", headers.get( "woocommerce-session" ) ); } } return response; } )
forward(operation).map(response => { const context = operation.getContext() const { response: { headers } } = context if (headers) { const token = headers.get("x-token") const refresh_token = headers.get("x-refresh-token") if (token) { localStorage.setItem(AUTH_TOKEN, token) localStorage.setItem(REFRESH_TOKEN, refresh_token) } } // //Se puede manipular datos cuando llegan de graphql // if (response.data.user.lastLoginDate) { // // } //redireccionar en caso de error if(response.errors && response.errors.length>0){ if(response.errors[0].message==='Not authenticated'){ localStorage.removeItem('token'); localStorage.removeItem('refreshToken'); window.location = "/login" } } return response; })