/
Wizardd
/
Forms
Обзор
Документация
Войти
/
Wizardd
/
Forms
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
frontend/lib/shared/api/api_provider.dart
67 строк
2 KB
dimad2602
added form deletion
16 июн 2025, 17:39
16 июн 2025, 17:39
c67eda4
Код
Авторство
О чём код?
import 'dart:convert'; import 'package:flutter/material.dart'; import 'package:http/http.dart' as http; import 'package:http/http.dart'; class ApiProvider { final String appBaseUrl; late Map<String, String> _mainHeaders; ApiProvider({required this.appBaseUrl}) { _mainHeaders = {'Content-type': 'application/json; charset=utf-8'}; } Future<Response> getData(String uri, {Map<String, String>? headers}) async { try { debugPrint("get uri = ${appBaseUrl + uri}"); Response response = await http.get(Uri.parse(appBaseUrl + uri), headers: headers ?? _mainHeaders); return response; } catch (e) { return http.Response('Error: $e', 500); } } Future<Response> postData(String uri, dynamic body) async { try { debugPrint("postData uri = ${appBaseUrl + uri}"); Response response = await http.post(Uri.parse(appBaseUrl + uri), body: json.encode(body), headers: _mainHeaders); debugPrint(response.body); return response; } catch (e) { debugPrint('Error api client'); debugPrint(e.toString()); return Response('Error: $e', 500); } } Future<Response> delete({required String uri, dynamic body}) async { try { debugPrint("delete uri = ${appBaseUrl + uri}"); Response response = await http.delete(Uri.parse(appBaseUrl + uri), headers: _mainHeaders); debugPrint(response.body); return response; } catch (e) { debugPrint('Error api client'); debugPrint(e.toString()); return Response('Error: $e', 500); } } Future<void> handleResponseError(http.Response response) async { if (response.statusCode == 200) { return; } else if (response.statusCode >= 500) { throw Exception('Server error occurred'); } else if (response.statusCode == 401) { throw Exception('Unauthorized access'); } else { final dynamic responseData = json.decode(response.body); final String errorMessage = responseData['message'] ?? 'Unknown error'; throw Exception(errorMessage); } } }