Data Fetching과 패키지 설치

2023. 12. 15. 09:11Frontend/Dart&Flutter

패키지 추가하기

Flutter나 Dart 패키지 pub.dev 라는 공식 패키지 보관소에서 받을 수 있음.

flutter pub add <라이브러리 이름>

비동기와 Future 타입

  • Future<Response> : 미래에 일어나는 것. 유저 네트워크, 서버 메모리 문제로 느릴 수 있는 경우, 요청이 처리될 때까지 기다려야할 때. await과 같이 쓰임. 미래에 받을 결과의 타입을 알려줌. 완료되었을 때 Response 반환함.
  • 비동기 프로그래밍(async programming) : API 에 요청한 후 응답을 반환할 때까지 기다리기. 어떤 일이 일어날 때까지 기다림. 프로그램이 side effect를 기다리도록 함. 예) 서버가 응답할 때까지 기다림.
import 'package:http/http.dart' as http;

class ApiService {
  final String baseUrl = '<https://webtoon-crawler.nomadcoders.workers.dev>';
  final String today = 'today';

  void getTodaysToons() async {
    final url = Uri.parse('$baseUrl/$today');
    // 이 부분이 응답 받을 때까지 기다리라 (await)
    // 비동기 함수 내에서만 사용할 수 있음.
    final response = await http.get(url);
    // 응답 상태가 성공일 경우
    if (response.statusCode == 200) {
      print(response.body);
      return;
    }
    throw Error();
  }
}

유용한 패키지들

  • 외부 url을 열 때 : url_launcher

url_launcher | Flutter Package

flutter pub add url_launcher
  • 로컬에 데이터 저장 : shared_preferences

shared_preferences | Flutter Package

flutter pub add shared_preferences

  • data fetching : http

http | Dart Package

dart pub add http

'Frontend > Dart&Flutter' 카테고리의 다른 글

플러터와 Stateful Widget  (2) 2023.10.31
플러터 화면구성  (1) 2023.10.31
플러터란? 프로젝트 시작하기  (1) 2023.10.31
Dart 기초 (Functions, Classes)  (0) 2023.08.15
Dart 기초 (Variables, DataType)  (1) 2023.04.21