Через пару дней, сортируя OAuth2 на сервере (Spring java), я начал работать с клиентом, написанным на С#. Я использую RestSharp для вызова моего веб-API, но у меня возникают настоящие трудности с OAuth2. Вряд ли есть какая-либо документация, и несколько примеров, которые я нашел в Интернете, не работают. Может ли кто-нибудь предоставить мне образец кода, который обновлен и что я могу использовать?
До сих пор у меня есть следующее:
var client = new RestClient("http://example.com/myapi/oauth/token");
RestRequest request = new RestRequest() { Method = Method.POST };
request.AddHeader("Content-Type", "application/json");
request.AddParameter("grant_type", "client_credentials");
request.AddParameter("client_id", "client-app");
request.AddParameter("client_secret", "secret");
var response = client.Execute(request);
Я просто запускаю этот код в режиме отладки, и когда я просматриваю ответ, я получаю несанкционированный доступ.
Когда я делаю завиток на консоли с теми же параметрами, он отлично работает, но, похоже, я не могу заставить это работать на С#. Вот команда curl:
curl -H "Accept: application/json" client-app:[email protected]/myapi/oauth/token -d grant_type=client_credentials
Кстати, я заменил свои истинные URL-адреса API и другую информацию на заполнители.