private async Task <OAuthToken> GetNewClientCredential(string scopeList) { var parameters = new HttpPropertyList(); parameters["client_id"] = _settings.ClientId; parameters["client_secret"] = _settings.ClientSecret; parameters["grant_type"] = "client_credentials"; parameters["scope"] = scopeList; return(await Send(parameters)); }
private async Task <OAuthToken> GetRefreshedClientCredential(string refreshToken) { var parameters = new HttpPropertyList(); parameters["client_id"] = _settings.ClientId; parameters["client_secret"] = _settings.ClientSecret; parameters["grant_type"] = "refresh_token"; parameters["refresh_token"] = refreshToken; return(await Send(parameters)); }
private async Task <OAuthToken> Send(HttpPropertyList parameters) { OAuthToken token = null; try { string body = parameters.FormEncode(); string request = await new HttpHelper(_settings.EndPoint) .SendRequest(HttpMethod.Post, "/oauth/access_token", body, null, "application/x-www-form-urlencoded"); token = OAuthToken.ParseJson(request); } catch (InvalidResponseException ex) { if (ex.InvalidResponseEntity.BadRequest == "invalid_client") { OnAuthorizationFailed(); } throw; } return(token); }