Dart:
Het verzenden van een HTTP-verzoek
Hoe:
Dart bevat het http
-pakket, een krachtige en handige manier om te werken met HTTP-bronnen. Voeg het eerst toe aan je pubspec.yaml-bestand:
dependencies:
http: ^0.13.3
Importeer het vervolgens in je Dart-code om te beginnen met het maken van verzoeken:
import 'package:http/http.dart' as http;
void main() async {
var url = Uri.parse('https://jsonplaceholder.typicode.com/todos/1');
var response = await http.get(url);
if (response.statusCode == 200) {
print('Antwoord inhoud: ${response.body}');
} else {
print('Verzoek mislukt met status: ${response.statusCode}.');
}
}
Voorbeelduitvoer voor een succesvol verzoek zou er als volgt uit kunnen zien:
Antwoord inhoud: {
"userId": 1,
"id": 1,
"title": "delectus aut autem",
"completed": false
}
Voor meer complexe verzoeken, zoals POST-verzoeken met een JSON-body, zou je het volgende doen:
import 'dart:convert';
import 'package:http/http.dart' as http;
void main() async {
var url = Uri.parse('https://jsonplaceholder.typicode.com/posts');
var response = await http.post(
url,
headers: {"Content-Type": "application/json"},
body: jsonEncode({
"title": 'foo',
"body": 'bar',
"userId": 1,
}),
);
if (response.statusCode == 201) {
print('Antwoordstatus: ${response.statusCode}');
print('Antwoord inhoud: ${response.body}');
} else {
print('Mislukt om een nieuwe post te creëren. Status: ${response.statusCode}');
}
}
Voorbeelduitvoer voor het postverzoek zou kunnen zijn:
Antwoordstatus: 201
Antwoord inhoud: {
"title": "foo",
"body": "bar",
"userId": 1,
"id": 101
}
Deze voorbeelden tonen basis HTTP GET- en POST-verzoeken met behulp van het http
-pakket in Dart. Dit pakket dekt de meeste behoeften voor het versturen van HTTP-verzoeken, inclusief complexere scenario’s met headers en inhoud van de body.