Cloudflare Workers로 Gmail 전송 구현 - 개발 가이드

Mary-Kate Olsen
풀어 주다: 2024-11-25 12:00:17
원래의
272명이 탐색했습니다.

Implementing Gmail Sending with Cloudflare Workers - Development Guide

Cloudflare Workers를 통한 Gmail 전송 구현에 관한 시리즈의 2부입니다.

  • 1부: 설정 ✅
  • 2부: 개발 환경(현재)
  • 3부: 구현(출시 예정)

소개

1부에서 Gmail API 액세스를 설정한 후 이제 Cloudflare 작업자를 위한 개발 환경을 구성하겠습니다. 이 가이드는 Cloudflare 페이지 및 작업자 모두와 원활하게 작동하는 강력한 개발 설정을 만드는 데 중점을 둡니다.

Cloudflare 인프라 이해

Cloudflare는 전 세계적으로 분산된 엣지 컴퓨팅 플랫폼에서 운영됩니다. 트래픽이 증가하면 페이지가 이러한 서버에 복제되고 사용자는 가장 가까운 서버로 연결됩니다. 이 서버리스 아키텍처를 사용하면 자체 서버, Docker 컨테이너 또는 Kubernetes 클러스터를 관리할 필요가 없습니다.

Cloudflare 작업자 및 페이지

작업자 개요

Cloudflare Worker는 요청 처리를 처리하는 서버리스 기능입니다. Cloudflare Pages가 프런트엔드(정적 콘텐츠)를 처리하는 동안 작업자는 양식 처리 및 이메일 전송과 같은 백엔드 작업을 관리합니다.

사용 가능한 스토리지 옵션

작업자는 다양한 Cloudflare 스토리지 솔루션과 통합할 수 있습니다.

  1. D1:

    • SQLite 기반 서버리스 SQL 데이터베이스
    • 최대 10GB 저장 용량
    • 30일 시간여행 기능
  2. KV(키-값):

    • 전 세계적으로 분산된 키-값 저장소
    • 엣지리딩에 최적화
  3. 내구성 있는 개체:

    • 일관적인 상태 관리
    • 분산 시스템에 이상적
  4. R2:

    • S3 호환 객체 스토리지
    • 대용량 파일 처리 기능
  5. 하이퍼드라이브:

    • PostgreSQL 데이터베이스 커넥터
    • 최적화된 연결 풀링

랭글러에 대한 중요 참고 사항

최근 Wrangler 사용 패턴의 변화에 ​​주의가 필요합니다. 이전에는 Wrangler가 일반적으로 전역적으로 설치되었지만 권장 접근 방식이 변경되었습니다.

이전 방법(권장하지 않음):

npm install -g wrangler
wrangler init my-project
로그인 후 복사
로그인 후 복사

새로운 추천 방법:

npm create cloudflare@latest
로그인 후 복사
로그인 후 복사

이번 변경으로 더 나은 프로젝트 격리 및 버전 관리가 제공됩니다.

Cloudflare 작업자의 언어 환경

Cloudflare Workers는 Node.js와 유사해 보이지만 중요한 차이점이 있습니다.

  • 기본 Node.js 모듈을 사용할 수 없습니다
  • 코드는 브라우저와 호환되어야 합니다
  • TypeScript가 지원되어 강력한 타이핑 이점을 제공합니다
  • Node.js는 개발용으로만 프로젝트별로 설치됩니다
  • Node.js 라이브러리 대신 직접 HTTP 요청을 사용해야 합니다

Cloudflare 페이지 애플리케이션 이해

Cloudflare Pages 애플리케이션은 기존 작업자와 다릅니다.

  • Cloudflare Pages 플랫폼에서 실행되는 완전히 통합된 웹 애플리케이션입니다
  • 페이지 함수는 /functions 디렉토리를 통해 이 기능을 확장합니다
  • 이 통합을 통해 페이지 애플리케이션 내에서 직접 서버측 처리(예: 이메일 처리)가 가능합니다
  • Pages Functions 사용 시 별도의 Worker 배포가 필요하지 않습니다

개발 환경 설정

1. 전제조건

  • Cloudflare 계정 만들기
  • GitHub 저장소를 Pages에 연결
  • 배포 설정 구성

2. 프로젝트 구조 설정

다음 디렉터리 구조를 만듭니다.

npm install -g wrangler
wrangler init my-project
로그인 후 복사
로그인 후 복사

다음으로 초기화:

npm create cloudflare@latest
로그인 후 복사
로그인 후 복사

3. 종속성 설치

your-project/
├── src/
│   └── pages/
│       └── index.astro
├── functions/
│   ├── contact-form.ts
│   └── tsconfig.json
├── public/
├── astro.config.mjs
├── package.json
└── wrangler.toml
로그인 후 복사

4. TypeScript 구성

function/tsconfig.json에 추가:

mkdir functions
touch functions/contact-form.ts functions/tsconfig.json wrangler.toml
로그인 후 복사

프로젝트 tsconfig.json 업데이트:

npm install --save-dev typescript @cloudflare/workers-types
로그인 후 복사

다음 단계

이 시리즈의 다음 기사에서는 다음을 포함한 구현 세부정보를 다룹니다.

  • 이메일 전송 기능 만들기
  • 양식 제출 처리
  • 오류 처리 및 유효성 검사
  • 테스트 및 배포

실제 구현과 함께 모든 것을 하나로 모을 3부도 기대해 주세요.

위 내용은 Cloudflare Workers로 Gmail 전송 구현 - 개발 가이드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿