Dart:
Отправка HTTP-запроса с базовой аутентификацией
Как это сделать:
В Dart вы можете использовать пакет http
для отправки HTTP-запросов с базовой аутентификацией. Сначала добавьте пакет http
в файл pubspec.yaml
:
dependencies:
http: ^0.13.4
Затем импортируйте пакет в ваш Dart файл:
import 'package:http/http.dart' as http;
import 'dart:convert';
Чтобы отправить GET-запрос с базовой аутентификацией, вы можете использовать следующий код:
Future<void> fetchUserData() async {
final username = 'yourUsername';
final password = 'yourPassword';
final credentials = base64Encode(utf8.encode('$username:$password'));
final response = await http.get(
Uri.parse('https://yourapi.com/userdata'),
headers: {
'Authorization': 'Basic $credentials',
},
);
if (response.statusCode == 200) {
print('Данные пользователя получены успешно!');
print('Тело ответа: ${response.body}');
} else {
print('Не удалось получить данные пользователя с кодом статуса: ${response.statusCode}');
}
}
Этот код отправляет GET-запрос на ‘https://yourapi.com/userdata' с заголовком базовой аутентификации. Имя пользователя и пароль кодируются в base64 и передаются в заголовке ‘Authorization’ в соответствии со стандартами базовой аутентификации.
Пример вывода:
При успешном запросе и если сервер возвращает код состояния 200, вы можете увидеть:
Данные пользователя получены успешно!
Тело ответа: {"id":1, "name":"John Doe", "email":"[email protected]"}
Если аутентификация не удастся или возникнет какая-либо другая ошибка, код состояния ответа поможет определить проблему.