/
face_shot
/
homework
Обзор
Документация
Войти
/
face_shot
/
homework
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Program.cs
76 строк
3 KB
face_shot
шарп http
17 янв 2025, 12:13
17 янв 2025, 12:13
7a0d22e
Код
Авторство
О чём код?
using System; using System.Net.Http; using System.Net.Http.Headers; using System.Text; using System.Threading.Tasks; class Program { static HttpClient httpClient = new HttpClient(); static async Task Main() { HttpRequestMessage loginRequest = new HttpRequestMessage(); // Данные для аутентификации var loginData = new StringContent("{\"username\":\"face_shot@mail.ru\",\"password\":\"8297688aR\"}", Encoding.UTF8, "application/json"); try { loginRequest = new HttpRequestMessage(HttpMethod.Get, "https://gitverse.ru/login"); string username = "face_shot@mail.ru"; string password = "8297688aR."; string svrCredentials = Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(username + ":" + password)); loginRequest.Headers.Add("Authorization", "Basic" + svrCredentials); // String Content = loginData; } catch (Exception ex) { Console.WriteLine(ex.Message); String a = ex.Message; System.Environment.Exit(1); } // Отправляем запрос на аутентификацию using HttpResponseMessage loginResponse = await httpClient.SendAsync(loginRequest); // Проверяем статус ответа if (loginResponse.IsSuccessStatusCode) { // Получаем токен из ответа string token = await loginResponse.Content.ReadAsStringAsync(); // Используем токен для авторизации последующих запросов httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // Отправляем запрос на получение данных using HttpRequestMessage dataRequest = new HttpRequestMessage(HttpMethod.Get, "https://gitverse.ru/face_shot/homework"); using HttpResponseMessage dataResponse = await httpClient.SendAsync(dataRequest); // Просматриваем данные ответа Console.WriteLine($"Status: {dataResponse.StatusCode}\n"); Console.WriteLine("Headers"); foreach (var header in dataResponse.Headers) { Console.Write($"{header.Key}:"); foreach (var headerValue in header.Value) { Console.WriteLine(headerValue); } } // Содержимое ответа Console.WriteLine("\nContent"); string content = await dataResponse.Content.ReadAsStringAsync(); Console.WriteLine(content); } else { Console.WriteLine($"Login failed: {loginResponse.StatusCode}"); } } }