Een HTTP-verzoek sturen met basisauthenticatie

Dart:
Een HTTP-verzoek sturen met basisauthenticatie

Hoe:

In Dart kun je het http pakket gebruiken om HTTP-verzoeken met basale authenticatie te verzenden. Voeg eerst het http pakket toe aan je pubspec.yaml bestand:

dependencies:
  http: ^0.13.4

Importeer vervolgens het pakket in je Dart-bestand:

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

Om een GET-verzoek met basale authenticatie te verzenden, kun je de volgende code gebruiken:

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

  if (response.statusCode == 200) {
    print('Gebruikersgegevens succesvol opgehaald!');
    print('Responstekst: ${response.body}');
  } else {
    print('Ophalen van gebruikersgegevens mislukt met statuscode: ${response.statusCode}');
  }
}

Deze code verstuurt een GET-verzoek naar ‘https://jouwapi.com/userdata' met een basale authenticatieheader. De gebruikersnaam en het wachtwoord worden in base64 gecodeerd en doorgegeven in de ‘Authorization’-header volgens de normen voor basale toegangsauthenticatie.

Voorbeelduitvoer:

Bij een succesvol verzoek en als de server een statuscode van 200 retourneert, kun je zien:

Gebruikersgegevens succesvol opgehaald!
Responstekst: {"id":1, "name":"John Doe", "email":"[email protected]"}

Als de authenticatie faalt of er een andere fout optreedt, zal de responsstatuscode helpen bij het identificeren van het probleem.