Исследование сетевых запросов во Flutter с использованием Dio и Localhost

Во Flutter Dio — это популярный пакет для выполнения сетевых запросов, а localhost относится к локальному серверу разработки на вашем компьютере. В этой статье мы рассмотрим различные методы выполнения сетевых запросов с помощью Dio и взаимодействия с локальным сервером в приложении Flutter. Мы предоставим примеры кода для демонстрации каждого метода.

Метод 1: отправка запроса GET

import 'package:dio/dio.dart';
void sendGetRequest() async {
  try {
    var response = await Dio().get('http://localhost:3000/data');
    print(response.data);
  } catch (error) {
    print('Error: $error');
  }
}

Метод 2: отправка POST-запроса

import 'package:dio/dio.dart';
void sendPostRequest() async {
  try {
    var response = await Dio().post('http://localhost:3000/data',
        data: {'name': 'John', 'age': 25});
    print(response.data);
  } catch (error) {
    print('Error: $error');
  }
}

Метод 3. Отправка параметров запроса

import 'package:dio/dio.dart';
void sendRequestWithQueryParams() async {
  try {
    var response = await Dio().get('http://localhost:3000/data',
        queryParameters: {'category': 'books', 'limit': 10});
    print(response.data);
  } catch (error) {
    print('Error: $error');
  }
}

Метод 4. Отправка заголовков

import 'package:dio/dio.dart';
void sendRequestWithHeaders() async {
  try {
    var dio = Dio();
    dio.options.headers['Authorization'] = 'Bearer YOUR_TOKEN';

    var response = await dio.get('http://localhost:3000/data');
    print(response.data);
  } catch (error) {
    print('Error: $error');
  }
}

Метод 5. Загрузка файлов

import 'package:dio/dio.dart';
void uploadFile() async {
  try {
    var formData = FormData.fromMap({
      'file': await MultipartFile.fromFile('/path/to/file.jpg', filename: 'file.jpg'),
    });

    var response = await Dio().post('http://localhost:3000/upload', data: formData);
    print(response.data);
  } catch (error) {
    print('Error: $error');
  }
}

В этой статье мы рассмотрели различные методы выполнения сетевых запросов во Flutter с использованием пакета Dio и взаимодействия с локальным сервером. Мы рассмотрели отправку запросов GET и POST, включая параметры запроса и заголовки, а также загрузку файлов. Используя мощные функции Dio, вы можете создать надежные сетевые функции в своих приложениях Flutter.

Не забудьте адаптировать URL-адрес http://localhost:3000в соответствии с конфигурацией вашего сервера.