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.