(WIP) Add network test

- Network tested
 - Some UI updates
This commit is contained in:
2026-04-13 20:00:38 +03:00
parent 210b59f8ed
commit c375eca7b8
7 changed files with 137 additions and 7 deletions

View File

@@ -1,8 +1,9 @@
import 'package:flutter/material.dart';
import 'package:client/screens/mainMenu.dart';
import 'package:client/theme.dart';
import 'package:client/screens/networkDebug.dart';
Widget currentScreen = MainMenu();
Widget currentScreen = NetworkDebug();
void main() {
runApp(const MyApp());

View File

@@ -0,0 +1,34 @@
import 'package:http/http.dart' as http;
import 'package:shared/models/message.dart';
class NetworkManager {
final String baseUrl = "https://msg.mr-potato.ru";
Future<void> send(Message message) async {
final url = Uri.parse('$baseUrl/send');
print('Отправка запроса на $url...');
try {
final response = await http.post(
url,
headers: {
'Content-Type': 'application/json',
},
body: message.toJson(),
);
if (response.statusCode == 200) {
print('Сообщение успешно доставлено!');
print('Ответ сервера: ${response.body}');
} else {
print('Ошибка сервера. Код: ${response.statusCode}');
}
} catch (e) {
print('Ошибка сети: $e');
}
}
}

View File

@@ -0,0 +1,30 @@
import 'package:client/networkManager.dart';
import 'package:client/widgets/chatFoloders.dart';
import 'package:client/widgets/chatItem.dart';
import 'package:flutter/material.dart';
import 'package:shared/models/message.dart';
class NetworkDebug extends StatelessWidget{
NetworkDebug({Key ?key});
NetworkManager net = NetworkManager();
String message = 'NONE';
@override
Widget build(BuildContext context) {
final colors = Theme.of(context).colorScheme;
return Scaffold(
backgroundColor: colors.surface,
body: Column(
children: [
TextField(decoration: InputDecoration(label: Text('Message')), onChanged: (value) => (message = value),),
TextButton(onPressed: () => net.send(Message(chatId: '123abc', msg: message)), child: Text('Send'))
],
),
);
}
}

View File

@@ -36,6 +36,7 @@ dependencies:
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.8
http: ^1.6.0
dev_dependencies:
flutter_test: