Я создаю веб-API для связи с веб-сайтом MYOB и его содержимым. Через сгенерированный URL-адрес, содержащий идентификатор клиента и ключ, я могу открыть страницу входа. После успешного входа в систему я получаю защитный код по электронной почте, который я должен ввести на новой странице аутентификации. Если код правильный, то я перенаправлен на страницу, которая дает мне код для доступа к содержимому сайта.
Я использовал System.Diagnostics.Process.Start(redirectUrl);
, который открывает страницу входа, и я могу сделать весь процесс вручную. Но мне нужен мой код, чтобы позаботиться обо всем процессе. Поэтому я использовал HttpClient, как показано ниже:
public static Task<string> GetCode(string url)
{
try
{
HttpClient client = new HttpClient();
client.BaseAddress = new Uri(url);
client.DefaultRequestHeaders.Accept.Add(
new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("text/plain"));
HttpResponseMessage response = client.GetAsync("authorize").Result;
return response.Content.ReadAsStringAsync();
}
catch (Exception)
{
return null;
}
}
Код только возвращает не найденную ошибку.