[flutter] 플러터 GET 요청에 대한 에러 핸들링을 어떻게 할 수 있나요?
플러터에서 GET 요청을 처리할 때, 때로는 서버에서 에러 응답을 받을 수 있습니다. 이러한 경우에는 앱이 이 에러를 적절하게 처리하여 사용자에게 적절한 피드백을 제공해야 합니다. 플러터에서는 이러한 에러 핸들링을 위해 다양한 방법을 제공하고 있습니다. 아래의 방법 중 한 가지를 선택하여 사용할 수 있습니다.
- try-catch 구문을 사용하여 에러 핸들링하기
가장 일반적인 방법은 try-catch 구문을 사용하여 GET 요청 코드를 감싸는 것입니다. 이렇게 하면 서버에서 에러 응답이 오면 catch 블록에서 해당 에러를 처리할 수 있습니다. 예를 들어:
try {
final response = await http.get(url);
// 정상적으로 응답이 온 경우
if (response.statusCode == 200) {
// 응답 처리 로직
} else {
// 에러 응답 처리 로직
}
} catch (e) {
// 네트워크 에러 등 예외 발생 시 처리 로직
}
이렇게 하면 GET 요청에 대한 에러 응답과 네트워크 에러를 모두 처리할 수 있습니다. 에러 응답에 따라서 적절한 사용자 인터페이스를 제공하거나 로깅을 수행할 수 있습니다.
- Dio 패키지를 사용하여 에러 핸들링하기
Dio는 네트워킹을 처리하기 위한 강력한 패키지로, GET 요청에 대한 에러 핸들링을 더욱 간편하게 해줍니다. 다음은 Dio 패키지를 사용한 예시입니다:
먼저, 프로젝트의 pubspec.yaml 파일에 Dio 패키지를 추가합니다:
dependencies:
dio: ^4.0.0
그런 다음, 아래와 같이 GET 요청을 처리하고 에러 핸들링을 수행할 수 있습니다:
import 'package:dio/dio.dart';
final Dio dio = Dio();
try {
final response = await dio.get(url);
// 정상적으로 응답이 온 경우
if (response.statusCode == 200) {
// 응답 처리 로직
} else {
// 에러 응답 처리 로직
}
} catch (e) {
// 네트워크 에러 등 예외 발생 시 처리 로직
}
Dio를 사용하면 더욱 다양한 기능과 에러 핸들링 옵션을 활용할 수 있습니다. 자세한 내용은 Dio 패키지의 공식 문서를 참조하시기 바랍니다.
위의 방법 중 하나를 선택하여 플러터 GET 요청에 대한 에러 핸들링을 수행할 수 있습니다. 선택한 방법을 통해 사용자에게 적절한 에러 메시지를 제공하고, 앱의 안정성과 사용자 경험을 향상시키세요.
참고 자료: