Wysyłanie żądania HTTP z podstawowym uwierzytelnieniem

Dart:
Wysyłanie żądania HTTP z podstawowym uwierzytelnieniem

Jak to zrobić:

W Dart można użyć pakietu http do wysyłania żądań HTTP z podstawową autentykacją. Najpierw dodaj pakiet http do pliku pubspec.yaml:

dependencies:
  http: ^0.13.4

Następnie zaimportuj pakiet w swoim pliku Dart:

import 'package:http/http.dart' as http;
import 'dart:convert';

Aby wysłać żądanie GET z podstawową autentykacją, możesz użyć poniższego kodu:

Future<void> fetchUserData() async {
  final username = 'twojaNazwaUzytkownika';
  final password = 'twojeHaslo';
  final credentials = base64Encode(utf8.encode('$username:$password'));
  final response = await http.get(
    Uri.parse('https://twojeapi.com/userdata'),
    headers: {
      'Authorization': 'Basic $credentials',
    },
  );

  if (response.statusCode == 200) {
    print('Pobrano dane użytkownika pomyślnie!');
    print('Odpowiedź serwera: ${response.body}');
  } else {
    print('Nie udało się pobrać danych użytkownika, kod błędu: ${response.statusCode}');
  }
}

Ten kod wysyła żądanie GET na adres ‘https://twojeapi.com/userdata' z nagłówkiem autentykacji podstawowej. Nazwa użytkownika i hasło są kodowane w base64 i przekazywane w nagłówku ‘Authorization’ zgodnie ze standardami podstawowego dostępu autentykacyjnego.

Przykładowe wyjście:

Po pomyślnym zapytaniu i jeśli serwer zwróci kod stanu 200, możesz zobaczyć:

Pobrano dane użytkownika pomyślnie!
Odpowiedź serwera: {"id":1, "name":"John Doe", "email":"[email protected]"}

Jeśli autentykacja się nie powiedzie lub wystąpi jakiś inny błąd, kod stanu odpowiedzi pomoże zidentyfikować problem.