Dart:
שליחת בקשת HTTP

איך לעשות:

Dart כוללת את החבילה http, דרך חזקה ונוחה לעבוד עם משאבי HTTP. תחילה, כלול אותה בקובץ pubspec.yaml שלך:

dependencies:
  http: ^0.13.3

לאחר מכן, ייבא אותה בקוד Dart שלך כדי להתחיל לשלוח בקשות:

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('גוף התגובה: ${response.body}');
  } else {
    print('הבקשה נכשלה עם סטטוס: ${response.statusCode}.');
  }
}

הפלט לבקשה מוצלחת עשוי להיראות כך:

גוף התגובה: {
  "userId": 1,
  "id": 1,
  "title": "delectus aut autem",
  "completed": false
}

לבקשות מורכבות יותר, כמו בקשות POST עם גוף JSON, היית עושה כדלקמן:

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('סטטוס התגובה: ${response.statusCode}');
    print('גוף התגובה: ${response.body}');
  } else {
    print('נכשל ביצירת פוסט חדש. סטטוס: ${response.statusCode}');
  }
}

הפלט לבקשת ה-POST עשוי להיראות:

סטטוס התגובה: 201
גוף התגובה: {
  "title": "foo",
  "body": "bar",
  "userId": 1,
  "id": 101
}

דוגמאות אלו מציגות בקשות HTTP GET ו-POST בסיסיות באמצעות החבילה http ב-Dart. חבילה זו מכסה את רוב הצרכים לשליחת בקשות HTTP, כולל תרחישים מורכבים יותר עם כותרות ותוכן גוף.