Add Api changes and Dart code changes from last week
Co-authored-by: Reimar <mail@reim.ar>
This commit is contained in:
parent
a471a11015
commit
aaf3598650
@ -8,8 +8,8 @@ enum ApiService {
|
||||
app,
|
||||
}
|
||||
|
||||
Future<String?> request(BuildContext context, ApiService service, String method, String path, Object? body) async {
|
||||
final messenger = ScaffoldMessenger.of(context);
|
||||
Future<String?> request(BuildContext? context, ApiService service, String method, String path, Object? body) async {
|
||||
final messenger = context != null ? ScaffoldMessenger.of(context) : null;
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
|
||||
final host = switch (service) {
|
||||
@ -42,17 +42,20 @@ Future<String?> request(BuildContext context, ApiService service, String method,
|
||||
body: body != null ? jsonEncode(body) : null,
|
||||
);
|
||||
}
|
||||
} catch (_) {
|
||||
messenger.showSnackBar(const SnackBar(content: Text('Unable to connect to server')));
|
||||
} catch (e) {
|
||||
debugPrint(e.toString());
|
||||
messenger?.showSnackBar(const SnackBar(content: Text('Unable to connect to server')));
|
||||
return null;
|
||||
}
|
||||
|
||||
if (response.statusCode < 200 || response.statusCode >= 300) {
|
||||
try {
|
||||
final json = jsonDecode(response.body);
|
||||
messenger.showSnackBar(SnackBar(content: Text(json['message'])));
|
||||
} catch (_) {
|
||||
messenger.showSnackBar(SnackBar(content: Text('Something went wrong (HTTP ${response.statusCode})')));
|
||||
messenger?.showSnackBar(SnackBar(content: Text(json['message'])));
|
||||
debugPrint('API error: ' + json['message']);
|
||||
} catch (e) {
|
||||
debugPrint(e.toString());
|
||||
messenger?.showSnackBar(SnackBar(content: Text('Something went wrong (HTTP ${response.statusCode})')));
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
@ -33,6 +33,7 @@ class _LoginPageState extends State<LoginPage> {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
prefs.setString('token', jsonUser.token);
|
||||
prefs.setString('id', jsonUser.id);
|
||||
prefs.setString('refresh-token', jsonUser.refreshToken);
|
||||
|
||||
if (mounted) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('Successfully logged in')));
|
||||
|
@ -5,6 +5,7 @@ import 'package:flutter_map/flutter_map.dart';
|
||||
import 'package:latlong2/latlong.dart';
|
||||
import 'package:mobile/favorites.dart';
|
||||
import 'package:mobile/register.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
import 'login.dart';
|
||||
import 'base/sidemenu.dart';
|
||||
import 'profile.dart';
|
||||
@ -12,7 +13,14 @@ import 'api.dart' as api;
|
||||
import 'models.dart';
|
||||
import 'package:http/http.dart' as http;
|
||||
|
||||
void main() {
|
||||
void main() async {
|
||||
final prefs = await SharedPreferences.getInstance();
|
||||
debugPrint('token: ' + (prefs.getString('token') ?? '') + ' reffresshh: ' + (prefs.getString("refresh-token") ?? ''));
|
||||
if (prefs.getString("token") != null && prefs.getString("refresh-token") != null) {
|
||||
final token = await api.request(null, api.ApiService.auth, "POST", "/RefreshToken", {'refresh-token': prefs.getString("refresh-token")});
|
||||
debugPrint(token);
|
||||
}
|
||||
|
||||
runApp(const MyApp());
|
||||
}
|
||||
|
||||
|
@ -23,13 +23,15 @@ class Favorite {
|
||||
class Login {
|
||||
String token;
|
||||
String id;
|
||||
String refreshToken;
|
||||
|
||||
Login(this.token, this.id);
|
||||
Login(this.token, this.id, this.refreshToken);
|
||||
|
||||
factory Login.fromJson(Map<String, dynamic> json) {
|
||||
return Login(
|
||||
json['token'],
|
||||
json['id'],
|
||||
json['refreshToken'],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user