fresh icon indicating copy to clipboard operation
fresh copied to clipboard

[fresh_graphql] wrong auth status

Open subzero911 opened this issue 3 years ago • 1 comments

At the first time I do setToken(), status always turns to "unauthorized". After refresh it becomes authorized.

code:

final freshLink = FreshLink.oAuth2(
    tokenStorage: InMemoryTokenStorage(),
    refreshToken: (token, client) async {
      // Perform refresh and return new token
      log.d('refreshing token!');
      return OAuth2Token(accessToken: accessToken, tokenType: 'Bearer'); // TODO refresh with RefreshToken
    },
    shouldRefresh: (response) => true, // TODO implement
  )..authenticationStatus.listen(log.d);
  await freshLink.setToken(OAuth2Token(accessToken: accessToken, tokenType: 'Bearer'));

I debugged it and cannot find an issue, but the problem is definitely in setToken(). I await it and suddenly execution goes to void _updateStatus where token is null !

subzero911 avatar Mar 31 '23 19:03 subzero911

That's extremely strange, but if I subscribe to status AFTER setToken(), it works just fine:

image Result: image

Maybe the problem's because of this line image When I create a FreshLink, the setter runned, and it suddenly turns status to "unauthenticated". Just guessing...

subzero911 avatar Mar 31 '23 20:03 subzero911

This has been fixed in #96

felangel avatar Jul 20 '24 20:07 felangel