forked from baron/baron-sso
SMS 인증 코드 발송 및 검증 UI/로직 연동
This commit is contained in:
@@ -74,6 +74,25 @@ class AuthProxyService {
|
||||
}
|
||||
}
|
||||
|
||||
static Future<Map<String, dynamic>> verifySmsCode(String phoneNumber, String code) async {
|
||||
final url = Uri.parse('$_baseUrl/api/v1/auth/verify-sms');
|
||||
|
||||
final response = await http.post(
|
||||
url,
|
||||
headers: {'Content-Type': 'application/json'},
|
||||
body: jsonEncode({
|
||||
'phoneNumber': phoneNumber,
|
||||
'code': code,
|
||||
}),
|
||||
);
|
||||
|
||||
if (response.statusCode == 200) {
|
||||
return jsonDecode(response.body);
|
||||
} else {
|
||||
throw Exception('Failed to verify code: ${response.body}');
|
||||
}
|
||||
}
|
||||
|
||||
static Future<void> logError(String message) async {
|
||||
final url = Uri.parse('$_baseUrl/api/v1/client-log');
|
||||
try {
|
||||
|
||||
@@ -235,19 +235,35 @@ class _LoginScreenState extends ConsumerState<LoginScreen>
|
||||
final phone = _phoneController.text.trim();
|
||||
if (phone.isEmpty) return;
|
||||
|
||||
print("[Frontend] SMS 코드 발송 시작. 번호: $phone");
|
||||
try {
|
||||
await AuthProxyService.sendSms(phone);
|
||||
print("[Frontend] SMS 코드 발송 요청 성공.");
|
||||
setState(() {
|
||||
_smsSent = true;
|
||||
});
|
||||
} catch (e) {
|
||||
print("[Frontend] SMS 코드 발송 요청 실패: $e");
|
||||
_showError("Failed to send SMS: $e");
|
||||
}
|
||||
}
|
||||
|
||||
Future<void> _handleSmsVerification() async {
|
||||
// For now, just show a success message
|
||||
_showSuccessDialog();
|
||||
final phone = _phoneController.text.trim();
|
||||
final code = _smsCodeController.text.trim();
|
||||
if (phone.isEmpty || code.isEmpty) return;
|
||||
|
||||
print("[Frontend] SMS 코드 검증 시작. 번호: $phone, 코드: $code");
|
||||
try {
|
||||
final result = await AuthProxyService.verifySmsCode(phone, code);
|
||||
final token = result['token'];
|
||||
print("[Frontend] SMS 코드 검증 성공. JWT 수신: $token");
|
||||
// TODO: Handle the JWT token from the result, e.g., result['token']
|
||||
_showSuccessDialog();
|
||||
} catch (e) {
|
||||
print("[Frontend] SMS 코드 검증 실패: $e");
|
||||
_showError("Failed to verify code: $e");
|
||||
}
|
||||
}
|
||||
|
||||
void _showError(String message) {
|
||||
|
||||
Reference in New Issue
Block a user