Files
rog_app/lib/features/services/auth_service.dart
2024-04-01 09:26:56 +05:30

45 lines
1.1 KiB
Dart

import 'package:rogapp/features/data/user.dart';
import '../utils/const.dart';
import 'package:dio/dio.dart';
class AuthService {
Dio dio = Dio();
Future<User?> userLogin(String email, String password) async {
final String serverUrl = ConstValues.currentServer();
final String url = '$serverUrl/api/login/';
try {
final response = await dio.post(
url,
data: {
'email': email,
'password': password,
},
options: Options(
headers: {
'Content-Type': 'application/json; charset=UTF-8',
},
),
);
if (response.statusCode == 200 && response.data != null) {
final data = response.data;
User user = User.fromMap(data["user"]);
final String token = data["token"];
user.auth_token = token;
return user;
}
return null;
} on DioException catch (e) {
print("Dio error: ${e.response?.statusCode} - ${e.message}");
return null;
} catch (e) {
print("Unexpected error: $e");
return null;
}
}
}