Οι εφαρμογές Flutter επικοινωνούν συχνά με APIs — κάνοντας HTTP αιτήματα, ανάλυση JSON και χειρισμό απαντήσεων/σφαλμάτων. Χρησιμοποιώντας τα πακέτα http ή dio, async/await, και ανάλυση JSON, η δικτύωση είναι ένα βασικό μέρος των περισσότερων εφαρμογών.
Κατάθεση HTTP αιτημάτων
import 'package:http/http.dart' as http;
// GET request
Future<List<User>> fetchUsers() async {
final response = await http.get(Uri.parse('https://api.example.com/users'));
if (response.statusCode == 200) {
final List data = jsonDecode(response.body); // parse JSON
return data.map((json) => User.fromJson(json)).toList();
} else {
throw Exception('Failed to load users'); // handle errors
}
}
// POST request
await http.post(
Uri.parse('https://api.example.com/users'),
headers: {'Content-Type': 'application/json'},
body: jsonEncode({'name': 'Ann'}),
);
