Lähettäminen HTTP-pyyntö perustodennuksella

Dart:
Lähettäminen HTTP-pyyntö perustodennuksella

Kuinka:

Dartissa voit käyttää http-pakettia lähettääksesi HTTP-pyyntöjä perusautentikoinnilla. Lisää ensin http-paketti pubspec.yaml-tiedostoosi:

dependencies:
  http: ^0.13.4

Tämän jälkeen tuo paketti Dart-tiedostoosi:

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

Perusautentikoinnilla varustetun GET-pyynnön lähettämiseksi voit käyttää seuraavaa koodia:

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('Käyttäjätiedot noudettu onnistuneesti!');
    print('Vastauksen sisältö: ${response.body}');
  } else {
    print('Käyttäjätietojen nouto epäonnistui, tilakoodi: ${response.statusCode}');
  }
}

Tämä koodi lähettää GET-pyynnön osoitteeseen ‘https://yourapi.com/userdata' perusautentikointiotsikolla. Käyttäjänimi ja salasana koodataan base64-muotoon ja lähetetään ‘Authorization’-otsikossa peruspääsyautentikoinnin standardien mukaisesti.

Esimerkkituloste:

Onnistuneen pyynnön ja palvelimen palauttaman tilakoodin 200 yhteydessä saatat nähdä:

Käyttäjätiedot noudettu onnistuneesti!
Vastauksen sisältö: {"id":1, "name":"John Doe", "email":"[email protected]"}

Jos autentikointi epäonnistuu tai muu virhe ilmenee, vastauksen tilakoodi auttaa tunnistamaan ongelman.