Я пытаюсь внедрить стороннюю службу в свой проект, и мне нужно выполнить некоторую аутентификацию, чтобы использовать их API.
Для этого мне нужно выполнить запрос POST по их URL-адресу авторизации, проблема в том, что когда я выполняю запрос, их сервер отправляет ответ с 302 и заголовком Location, теперь странная часть:
Мне нужно получить ссылку на это местоположение и прочитать строку запроса, чтобы получить нужную мне информацию.
Я уже перепробовал все, что мог придумать, даже Postman не будет с ним работать.
Это мой код:
var client = new RestClient(APIBase + "/portal/rest/oauth2/login");
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/x-www-form-urlencoded");
request.AddHeader("cache-control", "no-cache");
request.AddParameter("application/x-www-form-urlencoded", $"user={User}&password={Password}&client_id={ClientId}", ParameterType.RequestBody);
var content = client.Execute(request);
Это заголовки ответов, которые мне удалось получить с помощью curl в командной строке:
HTTP/1.1 302 Moved Temporarily
Date: Wed, 26 Jul 2017 17:59:32 GMT
Server: Apache-Coyote/1.1
Location: LOCATION-LINK
Content-Length: 0
HTTP/1.1 200 OK
Date: Wed, 26 Jul 2017 17:59:32 GMT
Server: Apache-Coyote/1.1
Accept-Ranges: bytes
ETag: W/"20095-1497998126000"
Last-Modified: Tue, 20 Jun 2017 22:35:26 GMT
Content-Type: text/html
Content-Length: 20095
Vary: Accept-Encoding
Является ли это возможным ?