플러터 템플릿

플러터, 백4앱, 클라우드 코드를 통한 스트라이프 통합으로 전자상거래 앱 구축하기

49min

소개

전자상거래 앱 개발은 제품 목록, 쇼핑 카트 기능, 안전한 결제 처리, 주문 추적 및 사용자 리뷰를 포함한 여러 구성 요소를 포함합니다. Flutter의 강력한 UI 툴킷과 Back4App의 확장 가능한 백엔드 서비스를 결합하면 개발 프로세스가 간소화됩니다. 또한 Back4App Cloud Code를 통해 Stripe를 결제 처리에 통합하면 안전하고 전문적인 거래 처리가 가능합니다.

이 튜토리얼에서는 다음 기능을 갖춘 전자상거래 앱을 구축합니다:

  • 제품 목록: 이미지, 설명 및 가격이 포함된 제품을 표시합니다.
  • 쇼핑 카트: 카트에 제품을 추가하고 제거합니다.
  • 사용자 계정: 사용자 프로필 및 주소를 관리합니다.
  • 안전한 체크아웃: Back4App Cloud Code를 통해 Stripe를 사용하여 안전하게 결제를 처리합니다.
  • 주문 추적: 주문 상태 및 이력을 추적합니다.
  • 리뷰 및 평가: 사용자가 리뷰 및 평가를 제출할 수 있도록 합니다.

전제 조건

이 튜토리얼을 따르려면 다음이 필요합니다:

  • Flutter SDK가 설치된 컴퓨터. Flutter 설치 가이드.
  • Flutter와 Dart에 대한 기본 지식.
  • IDE 또는 텍스트 편집기(예: Visual Studio Code 또는 Android Studio)
  • Back4App 계정. Back4App에 가입하세요.
  • Stripe 계정. Stripe에 가입하여 API 키를 얻으세요.
  • Node.js 및 npm이 Cloud Code 개발을 위해 설치되어 있어야 합니다.



1단계 – Flutter 프로젝트 설정

1.1. 새 Flutter 프로젝트 만들기

터미널을 열고 다음을 실행하세요:

Bash


프로젝트 디렉토리로 이동하세요:

Bash


1.2. 의존성 추가

pubspec.yaml을 열고 다음 의존성을 추가하세요:

YAML


flutter pub get을 실행하여 패키지를 설치하세요.

참고:

  • parse_server_sdk_flutter 백4앱 통합을 위한.
  • provider 상태 관리를 위한.
  • cached_network_image 효율적인 이미지 로딩을 위한.
  • flutter_stripe 클라이언트 측 Stripe 통합을 위한.
  • uuid 고유 식별자를 생성하기 위한.

2단계 – 백4앱 설정하기

2.1. 새로운 백4앱 애플리케이션 만들기

  1. 당신의 백4앱 대시보드에 로그인하세요.
  2. "새 앱 만들기"를 클릭하세요.
  3. 애플리케이션 이름으로 "EcommerceApp"을 입력하고 "생성"을 클릭하세요.

2.2. 데이터 모델 설정하기

우리는 백4앱에서 여러 클래스를 만들어야 합니다:

  • 제품
  • 사용자 (내장 클래스)
  • 주문
  • 주문 항목
  • 리뷰

2.2.1. 제품 클래스

  1. "데이터베이스" 섹션으로 이동합니다.
  2. "클래스 생성"을 클릭합니다.
  3. "사용자 정의"를 선택하고 "제품"을 클래스 이름으로 입력합니다.
  4. 다음 열을 추가합니다:
    • 이름: 문자열
    • 설명: 문자열
    • 가격: 숫자
    • 이미지: 파일
    • 카테고리: 문자열
    • 재고: 숫자

2.2.2. 주문 클래스

다음 열로 "주문" 클래스를 생성합니다:

  • 사용자: Pointer<_User>
  • 총 금액: 숫자
  • 상태: 문자열 (값: "대기 중", "지불됨", "배송됨", "배달됨")
  • 결제 의도 ID: 문자열 (Stripe 결제를 추적하기 위해)
  • 배송 주소: 문자열

2.2.3. 주문 항목 클래스

다음 열이 있는 "OrderItem" 클래스를 만드세요:

  • 주문: 포인터
  • 제품: 포인터
  • 수량: 숫자
  • 가격: 숫자

2.2.4. 리뷰 클래스

다음 열이 있는 "Review" 클래스를 만드세요:

  • 제품: 포인터
  • 사용자: 포인터<_사용자>
  • 평가: 숫자
  • 댓글: 문자열

2.3. 애플리케이션 자격 증명 얻기

  1. 다음으로 이동하십시오 앱 설정 > 보안 및 키.
  2. 다음 내용을 적어 두십시오 애플리케이션 ID클라이언트 키.

3단계 – 제품 관리 구현

3.1. Flutter에서 Parse 초기화

열기 lib/main.dart 및 수정하십시오:

Dart


다음으로 교체하십시오 'YOUR_APPLICATION_ID''YOUR_CLIENT_KEY' 귀하의 Back4App 자격 증명으로.

3.2. 제품 모델 생성

디렉토리 modelslib 아래에 생성하고 product.dart:

Dart


3.3. 제품 서비스 구현

디렉토리 serviceslib 아래에 생성하고 product_service.dart:

Dart


3.4. 홈 화면 만들기

screens 디렉토리를 lib 아래에 만들고 home_screen.dart:

Dart


3.5. 제품 상세 화면

생성 product_detail_screen.dart 아래에 lib/screens/:

Dart


4단계 – 사용자 계정 구현

4.1. 인증 서비스

추가 auth_service.dart 아래에 lib/services/:

Dart


4.2. 인증 화면

생성 login_screen.dartsignup_screen.dart 아래에 lib/screens/.

로그인 화면:

Dart


가입 화면:

Dart


4.3. AuthService 포함을 위한 메인 업데이트

에서 main.dart, MaterialAppMultiProvider로 감싸십시오:

Dart


4.4. 인증 상태에 따른 리디렉션

인증 상태를 확인하도록 main.dart을 수정하십시오:

Dart


5단계 – 쇼핑 카트 기능

5.1. 카트 서비스 생성

다음 위치에 cart_service.dart 추가: lib/services/:

Dart


5.2. 장바구니 화면 만들기

Add cart_screen.dart under lib/screens/:

Dart


6단계 – 클라우드 코드를 통한 Stripe 통합으로 안전한 결제

6.1. Stripe 계정 설정

  1. Stripe 계정에 가입하세요.
  2. Stripe 대시보드에서 발행 가능 키비밀 키를 얻으세요. 개발자 > API 키 아래에서 확인할 수 있습니다.

6.2. 클라우드 코드에 Stripe SDK 설치

Back4App은 JavaScript로 작성된 클라우드 코드 기능을 지원합니다. 결제 처리를 위한 클라우드 코드 기능을 작성할 것입니다.

6.2.1. 클라우드 코드 프로젝트 생성

  1. Back4App 앱 대시보드에서 앱 설정 > 클라우드 코드 기능으로 이동하세요.
  2. 클릭하여 "코드 편집"를 선택하여 클라우드 코드 편집기를 엽니다.

6.2.2. npm 초기화 및 Stripe 패키지 설치

클라우드 코드 터미널(편집기에서 제공됨)에서 다음을 실행하세요:

Bash


노트: Back4App의 클라우드 코드는 Node.js 버전 14.x를 사용하므로 호환성을 확인하세요.

6.3. 결제 의도를 위한 클라우드 함수 생성

클라우드 코드 편집기에서 main.js를 생성하거나 수정하세요:

JS


'YOUR_STRIPE_SECRET_KEY'를 실제 Stripe 비밀 키로 교체하세요.

보안 노트: 클라이언트 측에 비밀 키를 노출하지 마세요. 클라우드 코드에서 안전하게 보관하세요.

6.4. 클라우드 코드 배포

클라우드 코드 편집기에서 "배포"를 클릭하여 함수를 배포하세요.

6.5. Flutter에서 결제 구현하기

6.5.1. Flutter에서 Stripe 초기화하기

다음의 main.dart, Parse().initialize, 다음에 추가하세요:

Dart


'YOUR_STRIPE_PUBLISHABLE_KEY'를 당신의 Stripe 공개 키로 교체하세요.

6.5.2. 체크아웃 화면 만들기

다음의 checkout_screen.dartlib/screens/, 아래에 추가하세요:

Dart


6.5.3. 결제 확인 처리하기

생성 order_confirmation_screen.dart 아래에 lib/screens/:

Dart


6.6. Back4App에 주문 저장하기

다음과 같이 _processPayment 메서드를 수정하여 주문 세부정보를 저장하세요:

Dart


7단계 – 주문 추적

7.1. 주문 서비스 생성

다음과 같이 order_service.dart 아래에 lib/services/:

Dart


7단계 – 주문 추적

7.2. 주문 모델 생성

다음에 추가하십시오 order.dart 아래에 lib/models/:

Dart


7.3. 주문 화면 생성

다음에 추가하십시오 orders_screen.dart 아래에 lib/screens/:

Dart


8단계 – 리뷰 및 평가

8.1. 리뷰 서비스 생성

추가 review_service.dart 아래에 lib/services/:

Dart


8.2. 리뷰 모델 생성

추가 review.dart 아래에 lib/models/:

Dart


8.3. 제품 상세 화면 업데이트

In product_detail_screen.dart, 리뷰를 표시하고 제출하는 섹션을 추가합니다.

Dart


결론

이 포괄적인 튜토리얼에서, 당신은 Flutter와 Back4App을 사용하여 전자상거래 앱을 구축하고, Cloud Code를 통해 Stripe와 통합하여 안전한 결제 처리를 구현했습니다. 제품 목록, 쇼핑 카트 기능, 사용자 인증, 주문 추적 및 리뷰와 같은 주요 기능을 구현했습니다.

주요 요점

  • Back4App 통합: Flutter 앱의 백엔드 관리를 간소화합니다.
  • Cloud Code를 통한 Stripe 통합: 민감한 키를 노출하지 않고 안전하게 결제를 처리합니다.
  • 모듈식 아키텍처: 서비스와 모델을 분리하여 유지 관리성을 향상시킵니다.

다음 단계

  • 보안 강화: 적절한 오류 처리 및 입력 유효성 검사를 구현합니다.
  • UI/UX 개선: 더 나은 사용자 경험을 위한 사용자 인터페이스를 개선합니다.
  • 재고 관리: 구매 시 제품 재고를 업데이트합니다.
  • 이메일 알림: 사용자에게 주문 확인 이메일을 보냅니다.
  • 관리자 패널: 제품 및 주문 관리를 위한 관리자 인터페이스를 생성합니다.

추가 리소스

행복한 코딩 되세요!