Play 프레임워크를 위한 백엔드를 구축하는 방법?
이 튜토리얼에서는 Back4App을 사용하여 Play Framework의 완전한 백엔드를 구축하는 방법을 배웁니다.
우리는 서버 백엔드에 필요한 기능인 구성 설정, 데이터베이스 관리, 클라우드 코드 함수, REST 및 GraphQL API, 사용자 인증, 파일 저장소 및 실시간 쿼리를 포함하여 살펴볼 것입니다.
Back4App이 웹 애플리케이션 백엔드를 설정하고 확장하며 유지 관리하는 과정을 어떻게 단순화하는지 볼 수 있으며, Play Framework 코드에 집중할 수 있습니다.
Back4App으로 Play Framework의 백엔드를 구축하는 방법을 배우면 개발 시간을 단축하고 개발 운영의 문제를 최소화할 수 있습니다.
또한 소셜 로그인, 작업 예약(클라우드 작업) 및 웹후크와 같은 강력한 기능을 추가할 수 있습니다. 이를 완료하면 시스템을 프로덕션 등급 솔루션으로 확장하고 필요에 따라 더 고급 기능을 통합할 수 있습니다.
완료하면 다음 확장 가능하고 안전한 Play Framework 웹 애플리케이션을 만들기 위한 확고한 청사진을 갖게 됩니다.
실제 요구 사항을 처리하기 위해 성능 향상, 통합 또는 개발 모드 최적화에 더 깊이 들어갈 준비가 되어 있습니다.
이 튜토리얼을 완료하려면 다음이 필요합니다:
- 작동하는 Play Framework 환경
- REST 또는 GraphQL에 대한 친숙함 이는 Back4App와 상호작용하는 데 도움이 됩니다. 특히 Parse SDK를 직접 사용하지 않거나 사용할 수 없는 경우에 유용합니다.
시작하기 전에 이러한 필수 조건이 준비되어 있는지 확인하세요. Back4App 프로젝트가 설정되고 Play Framework 환경이 준비되어 있으면 원활하게 따라갈 수 있습니다.
새로운 Back4App 프로젝트는 백엔드의 중추로, 애플리케이션의 데이터, 인증 및 클라우드 로직을 관리합니다. 작은 프로토타입을 만들든 대규모 웹 애플리케이션을 만들든, Play Framework 앱을 새로운 Back4App 프로젝트에 쉽게 연결할 수 있습니다.
- Back4App 계정에 로그인하세요.
- “새 앱” 클릭 Back4App 대시보드에서.
- 앱 이름 지정, 예를 들어, “Play-Framework-Backend”.
생성된 후, 새 프로젝트가 대시보드에 나타납니다.
Back4App은 Parse Server를 활용합니다. Play Framework 앱이 Parse Java SDK를 통해 Back4App과 상호작용할 계획이라면, 필요에 따라 build.sbt에 추가할 수 있습니다. 그렇지 않으면 REST 또는 GraphQL 엔드포인트를 사용할 수 있습니다.
Parse 키 가져오기:
- Back4App 대시보드에서 앱 설정 또는 보안 및 키를 열어 애플리케이션 ID, REST API 키, JavaScript 키 (프론트엔드 호출을 사용하는 경우), 또는 클라이언트 키, 그리고 서버 URL, (보통 https://parseapi.back4app.com)를 찾으세요.
Java/Parse SDK 사용하기 (선택 사항):
Parse SDK를 사용하여 직접 서버 측 통합을 원하시면, build.sbt에 의존성을 추가하세요:
그런 다음, Play Framework 코드에서 Parse를 초기화할 수 있습니다:
이 코드를 Global.scala에 배치하거나 적절한 초기화 지점에서 호출할 수 있습니다. 이는 Back4App 프로젝트와의 직접적인 상호작용을 설정합니다. 원하신다면, 데이터 작업을 위해 REST 또는 GraphQL 엔드포인트를 사용하세요. 특히 HTTP 요청에 대한 더 많은 제어가 필요하거나 마이크로서비스를 구축하는 경우에 유용합니다.
Back4App의 데이터 저장 서비스는 다양한 데이터 유형과 동적 스키마 생성을 지원합니다. 이를 통해 Play 앱의 데이터를 최소한의 번거로움으로 저장할 수 있습니다.
- “데이터베이스” 섹션을 열어보세요 Back4App 대시보드에서.
- 새 클래스를 만드세요 (예: “Todo”) 그리고 열을 추가하세요 (예: title를 String으로, isCompleted를 Boolean으로).
- 저장하여 데이터베이스 스키마를 완료하세요.
데이터 구조를 빠르게 정의하고 싶다면:
- 앱 대시보드에서 AI 에이전트를 열어보세요
- 원하는 데이터 모델을 설명하세요 간단한 언어로 (예: “간단한 ToDo 모델 만들기”).
- 에이전트가 자동으로 스키마를 생성합니다.
Play Framework 앱에 Parse Java SDK를 포함하기로 선택한 경우, 데이터를 저장하고 쿼리할 수 있습니다:
Play Framework 컨트롤러 또는 서비스에서 HTTP 요청을 보낼 수 있습니다:
Back4App는 GraphQL API도 제공합니다:
마이크로서비스를 구축하거나 프론트엔드 클라이언트를 위한 유연한 API가 필요한 경우 유용합니다.
당신의 웹 애플리케이션이 실시간 데이터가 필요하다면 실시간 쿼리:
- 실시간 쿼리 활성화는 Back4App 대시보드의 서버 설정에서 하세요.
- 코드에서 구독을 설정하세요. Parse SDK 또는 사용자 정의 코드를 사용하는 경우 liveQueryServerURL을 구성해야 합니다.
- “Todo”와 같은 클래스의 변경 사항에 대해 구독하세요.
Back4App는 액세스 제어 목록 (ACL)을 제공하여 객체 수준 보안을 제공하고 클래스 수준 권한 (CLP)을 통해 광범위한 제한을 설정합니다. 이는 서버 백엔드를 안전하게 유지하고 승인된 작업만 수행되도록 보장합니다.
Back4App 대시보드의 데이터베이스 섹션에서:
- 클래스 선택 (예: “Todo”).
- CLP 열기 인증된 사용자, 역할 또는 공개에 대한 읽기/쓰기를 제한합니다.
- 필요에 따라 구성하세요 (예: 모든 쓰기에 대해 “인증 필요”).
ACL은 개별 객체를 보호합니다. 예를 들어, 특정 사용자가 특정 기록을 읽거나 쓸 수 있도록 보장할 수 있습니다. Scala 코드에서 Parse SDK를 사용하는 경우:
클라우드 코드는 Back4App의 서버에서 사용자 정의 로직을 실행할 수 있게 해주며, 데이터 거래 전후에 비즈니스 규칙이나 유효성 검사를 추가할 수 있습니다. 이러한 기능을 구현하기 위해 자체 서버 프로비저닝이나 개발 모드 재시작을 처리할 필요가 없습니다.
이것은 REST, GraphQL을 통해 또는 Parse SDK를 사용하여 직접 호출할 수 있습니다.
Back4App CLI 또는 대시보드를 사용하세요:
- CLI 설치 (Linux/MacOS 예):
- 계정 키 구성:
- 배포:
또는 대시보드를 통해 배포하여 클라우드 코드 > 함수에 함수를 붙여넣고 “배포”를 클릭하세요.
클라우드 코드는 NPM 모듈을 지원합니다. 예를 들어, axios와 같은 HTTP 클라이언트가 필요하다면:
Back4App은 Parse.User 클래스를 사용하여 회원가입, 로그인 및 세션 관리를 수행합니다. 구성 설정에서 “이메일 확인 활성화” 및 “비밀번호 재설정 활성화”를 원하는 경우 확인하십시오.
소셜 로그인이 필요하면 (Google, Apple 또는 Facebook) Back4App 대시보드에서 구성하십시오. Parse는 유틸리티 메서드를 제공하거나 필요와 접근 방식에 따라 표준 OAuth 흐름을 사용할 수 있습니다.
Back4App은 Parse.File을 통해 파일을 저장합니다. Play Framework에서 REST 또는 Parse SDK를 사용하여 업로드할 수 있습니다.
보안 고려사항: Back4App 서버 설정에서 파일 업로드 권한(공개, 익명 또는 인증된 사용자에 대해 활성화)을 구성할 수 있습니다.
- Back4App 대시보드에서 이메일 설정으로 이동합니다.
- 이메일 인증 활성화 및 비밀번호 재설정을 위한 이메일 템플릿을 설정합니다.
- Play 앱에서 다음을 호출할 수 있습니다:
이것은 Back4App이 사용자 이메일로 비밀번호 재설정 지침을 보내도록 트리거합니다.
백그라운드 작업(예: 데이터 정리 또는 보고서 생성)을 위한 시작 작업이 필요하다면, Back4App에서 클라우드 작업을 예약할 수 있습니다.
예약하기:
- 클라우드 코드를 배포하세요.
- 앱 설정 > 서버 설정 > 백그라운드 작업에서 작업 예약을 매일, 매주 또는 필요에 따라 실행되도록 설정하세요.
데이터가 변경될 때마다 외부 서비스에 알리려면 웹훅을 Back4App에서 설정하세요.
- 더보기 > 웹훅으로 가세요.
- 엔드포인트가 있는 웹훅 추가하기 (예: Slack 또는 Stripe).
- “Todo 클래스에 새 레코드”와 같은 트리거 선택하기.
Cloud Code 트리거에서 웹훅을 생성하여 서드파티 서비스에 직접 HTTP 요청을 보낼 수도 있습니다.
이 Back4App Admin App은 데이터 및 기록 관리를 위한 사용자 친화적인 인터페이스입니다. 비기술 사용자는 코드에 들어가지 않고도 CRUD 작업을 처리할 수 있습니다.
- 이동하십시오 앱 대시보드 > 더보기 > 관리자 앱.
- 활성화하고 관리자 사용자를 생성하십시오.
- 편리한 접근을 위해 하위 도메인을 선택하십시오.
로그인하면 하위 대시보드나 CLI 도구를 건드리지 않고도 데이터 항목을 관리할 수 있습니다.
축하합니다! 당신은 Play Framework를 위한 백엔드를 구축하는 방법을 Back4App의 서비스를 사용하여 배웠습니다. 이 튜토리얼을 통해 당신은:
- Back4App에서 Play Framework 앱을 위한 안전한 백엔드를 생성했습니다.
- 스키마 설계, 관계 및 실시간 쿼리를 포함한 데이터베이스를 설정했습니다.
- 안전한 데이터 접근을 위한 ACL과 CLP를 적용했습니다.
- 사용자 정의 로직, 트리거 및 외부 통합을 위한 Cloud Code를 작성했습니다.
- 사용자 인증, 소셜 로그인 및 비밀번호 재설정을 구성했습니다.
- 파일 업로드를 처리하고 선택적 파일 보안을 추가했습니다.
- Cloud Jobs를 사용하여 백그라운드 작업을 예약했습니다.
- Webhooks를 통해 타사 서비스와 통합했습니다.
- 데이터 관리를 간소화하기 위해 Back4App 관리 패널을 탐색했습니다.
이 도구들이 마련되면 개발 모드를 최적화하고 필요에 따라 확장하며 Play Framework에서 강력한 웹 애플리케이션을 구축할 수 있습니다.
서버 백엔드를 다음 단계로 끌어올리기 위해 추가 통합, 성능 조정 및 고급 보안 조치를 수용하세요.
- 캐싱, 로깅 또는 모니터링 도구로 생산 설정을 향상시키세요.
- 역할 기반 접근 제어 또는 제로 트러스트 설정으로 고급 보안을 탐색하세요.
- 결제 게이트웨이 또는 상거래 또는 분석을 위한 기타 제3자 API를 통합하세요.
- Back4App의 공식 문서를 확인하여 성능 및 문제 해결에 대한 더 깊은 통찰을 얻으세요.
- 실시간 채팅 앱, IoT 솔루션 또는 위치 기반 서비스에 대한 더 많은 튜토리얼을 검토하세요 — 이 가이드의 기술을 기반으로 하는 것들이 많습니다.