public async Task <APIResult <ResponseAuthenticate, JsonError> > AsyncRefreshTokens(UserCredentials user) { // Prepare JSON payload & local variables string json = JsonUtility.ToJson(new RefreshPayload(user.GetRefreshToken())); try { string response = await rs.PerformAsyncPost(refreshEndpoint, json); ResponseAuthenticate tokens = JsonUtility.FromJson <ResponseAuthenticate>(response); // Return APIResult:ResponseAuthenticate in success case return(new APIResult <ResponseAuthenticate, JsonError>(tokens)); } catch (WebException e) { // Retrieve error payload from WebException JsonError error = JsonUtility.FromJson <JsonError>(retrieveErrorJson(e)); // Return APIResult:JsonError in error case return(new APIResult <ResponseAuthenticate, JsonError>(error)); } }
public async Task <APIResult <UserCredentials, JsonError> > AsyncAuthenticateUser(UserCredentials user) { validateUsernamePassword(user.GetUsername(), user.GetPassword()); // Prepare JSON payload & local variables string json = JsonUtility.ToJson(new PayloadAuthenticate(user)); try { string response = await rs.PerformAsyncPost(authenticateEndpoint, json); ResponseAuthenticate tokens = JsonUtility.FromJson <ResponseAuthenticate>(response); // Return APIResult:UserCredentials in success case return(new APIResult <UserCredentials, JsonError>( new UserCredentials(user.GetUsername(), user.GetPassword(), tokens.access, tokens.refresh) )); } catch (WebException e) { // Retrieve error payload from WebException JsonError error = JsonUtility.FromJson <JsonError>(retrieveErrorJson(e)); // Return APIResult:JsonError in error case return(new APIResult <UserCredentials, JsonError>(error)); } }