[flutter] Dio를 사용하여 서버의 응답을 파싱하는 방법을 알려주세요.
Dio는 Flutter 애플리케이션에서 HTTP 요청을 쉽게 처리할 수 있는 강력한 패키지입니다. Dio를 사용하여 서버로부터의 응답을 효과적으로 파싱하는 방법을 설명하겠습니다.
1. Dio 패키지 추가하기
먼저 pubspec.yaml
파일에 Dio 패키지를 추가합니다.
dependencies:
dio: ^4.0.0
그리고 flutter pub get
명령어를 사용하여 패키지를 설치합니다.
2. Dio 인스턴스 생성하기
다음으로 Dio 인스턴스를 생성하고 서버로부터의 응답을 처리할 준비를 합니다.
import 'package:dio/dio.dart';
final dio = Dio();
3. 서버 응답 파싱하기
Dio를 사용하여 GET 또는 POST 요청을 보내고, 서버로부터의 응답을 파싱할 수 있습니다.
예를 들어, 서버로부터 JSON 응답을 받았을 때, 다음과 같이 응답을 파싱할 수 있습니다.
Response response = await dio.get('https://api.example.com/data');
Map<String, dynamic> data = response.data;
또는 응답 데이터를 모델 클래스로 변환할 수도 있습니다.
class Post {
final int userId;
final int id;
final String title;
final String body;
Post({required this.userId, required this.id, required this.title, required this.body});
factory Post.fromJson(Map<String, dynamic> json) {
return Post(
userId: json['userId'],
id: json['id'],
title: json['title'],
body: json['body'],
);
}
}
Response response = await dio.get('https://api.example.com/posts/1');
Post post = Post.fromJson(response.data);
4. 오류 처리하기
마지막으로 Dio를 사용하여 서버 응답의 오류 상황을 처리할 수도 있습니다.
try {
Response response = await dio.get('https://api.example.com/data');
// 처리 로직
} catch (e) {
// 오류 처리 로직
}
Dio를 사용하여 Flutter 애플리케이션에서 서버로부터의 응답을 효과적으로 파싱할 수 있습니다. 이를 통해 데이터를 효율적으로 가져와 사용할 수 있게 됩니다.
더 자세한 내용은 Dio 공식 문서를 참고하시기 바랍니다.