Аутентификация против Bronto REST Api с использованием RestSharp - PullRequest
2 голосов
/ 07 мая 2019

Я установил hallmonitor (OAuth 2.0-совместимый сервис) в песочнице Bronto, но, используя RestSharp, я не могу получить токен доступа, чтобы иметь возможность делать дальнейшие вызовы REST API.

Мне удалось успешно использовать curl, т.е.

curl -X POST -d "grant_type=client_credentials&client_id=CLIENTID&client_secret=CLIENTSECRET" https://auth.bronto.com/oauth2/token 

Я пробовал несколько вариантов кода ниже, но, похоже, ничего не работает, я всегда получаю сообщение об ошибке.

{
    "error_description": "Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method).",
    "error": "unauthorized_client"
}

Упрощенный пример кода

var client = new RestClient("https://auth.bronto.com");
client.Authenticator = new HttpBasicAuthenticator(clientId, secret);
//client.Authenticator = new SimpleAuthenticator(CLIENT_ID, clientId, CLIENT_SECRET, secret);

RestRequest request = new RestRequest("/oauth2/token", Method.POST);
//request.AddHeader("Authorization", "Basic " + client);
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddParameter(GRANT_TYPE, CLIENT_CREDENTIALS);
//request.AddParameter(CLIENT_ID, clientId);
//request.AddParameter(CLIENT_SECRET, secret);

request.RequestFormat = DataFormat.Json;

IRestResponse response = client.Execute(request);

Кто-нибудь использовал RestSharp с Bronto REST API для успешной аутентификации и получения токена доступа?

Любая помощь очень ценится.

...