Я пытаюсь получить токен авторизации запроса, отправив веб-запрос на URL.API ожидает имя пользователя / пароль в качестве учетных данных в полезной нагрузке form-data
.
Когда я выбираю опцию входа в браузере, сетевые журналы показывают запрос GET
с HTML
в качестве ответа, сопровождаемый запросом POST
, который возвращает данные формы с именем пользователя / паролеми запрос токена в полезной нагрузке.
Пытаясь смоделировать поток с помощью webrequest
, я делаю простой запрос post
, как показано ниже:
public string HttpPost(string url, string post, string refer = "")
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
// request.CookieContainer = cJar;
request.UserAgent = UserAgent;
request.KeepAlive = false;
request.Method = "POST";
request.Referer = refer;
byte[] postBytes = Encoding.ASCII.GetBytes(post);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = postBytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(postBytes, 0, postBytes.Length);
requestStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream());
return sr.ReadToEnd();
}
Однако этот запрос возвращает только текстовую / HTML-разметку страницы, как это делает первая часть запроса браузера.Как заставить его запустить последующий POST
для получения токена из конечной точки?
РЕДАКТИРОВАТЬ 1:
Вот первый GET
Запрос: