Node.js SendGrid에서com으로 메일 보내는 방법

3757 단어 Node.jsSendGridtech

이 보도에 관하여


이 보도는 요점이다.js에서 SendGrid.com를 이용하여 메일을 보내는 방법을 소개합니다.
  • 소스 코드
  • 전제 조건


    전제 조건은 아래와 같다.
  • SendGrid.com의 서명(사용자 등록) 완료
  • 도메인 인증, DKIM, SPF 등 기본 설정 완료
  • 대략적인 절차


    대략적인 절차는 아래와 같다.
  • 인코딩
  • 동작 확인
  • 부호화


    터미널에서 다음 명령을 실행하여 인코딩을 준비합니다.
    mkdir sendgrid-send-email
    cd sendgrid-send-email
    npm init -y
    npm install --save @sendgrid/mail dotenv
    touch main.js
    

    main.js


    편집기에서main.js를 열고 다음 내용을 입력하십시오.
    요점은 아래와 같다.
  • sgMail.SetapiKey 메서드는 SendGrid를 호출합니다.com의 API 키를 설정합니다.
  • 메일 내용(발송자, 수신자, 주제, 본문)을 대상에 집합한다.발송자와 수신자에 대해name과 이메일로 디스플레이 이름과 메일 주소를 지정할 수 있습니다.
  • sgMail.send 방법을 호출하여 메일을 보냅니다.
  • .env


    편집기에서env를 열고 다음 3점을 입력합니다.
  • SENDGRID_API_KEY: SendGrid.com용 API 키
  • EMAIL_FROM: 보낸 사람의 메일 주소
  • EMAIL_TO: 받는 사람의 메일 주소
  • 동작 확인


    터미널에서 다음 명령을 실행하여 메일을 보낼지 확인합니다.
    node -r dotenv/config main.js
    
    집행 결과는 다음과 같다.
    [
      {
        "statusCode": 202,
        "body": "",
        "headers": {
          "server": "nginx",
          "date": "Fri, 29 Apr 2022 02:34:56 GMT",
          "content-length": "0",
          "connection": "close",
          "x-message-id": "rBmomxZ1S_CjuF5ZZdkFrQ",
          "access-control-allow-origin": "https://sendgrid.api-docs.io",
          "access-control-allow-methods": "POST",
          "access-control-allow-headers": "Authorization, Content-Type, On-behalf-of, x-sg-elas-acl",
          "access-control-max-age": "600",
          "x-no-cors-reason": "https://sendgrid.com/docs/Classroom/Basics/API/cors.html",
          "strict-transport-security": "max-age=600; includeSubDomains"
        }
      },
      ""
    ]
    

    끝말


    하루에 100통의 메일을 무료로 보낼 수 있는 센드그리드.나는 com이 매우 좋은 서비스라고 생각한다.하루에 100통이 넘으면 월액 14.95부터 에스센트럴스 프로그램을 이용할 수 있지만 전용 IP를 받은 월액 89.95달러의 프로 프로그램 메일의 도착률이 높아 추천한다.또한, SendGrid.com은 구조 계획 연구소의 SendGrid와는 다릅니다.
    SendGrid.To, Cc, Bcc에서 같은 메일 주소가 중복되면 다음 오류 메시지가 표시되어 메일을 보낼 수 없습니다.
    Each email address in the personalization block should be unique between to, cc, and bcc. We found the first duplicate instance of [[email protected]] in the personalizations.0.bcc field.
    
    다른 우편물도 여러 가지 이유로 보낼 수 없는 경우가 있으므로 다음과 같은 방법을 취하는 것이 좋다.
  • 요청의 발송 기록 저장
  • 재전송 요청을 위한 API 설정
  • Cloud Scheduller와 같은cron 서비스를 사용하여 API 재발급 요청을 주기적으로 발송
  • 발송 실패 횟수가 예정치를 초과한 경우 발송을 포기하고 메일 발송 실패 로그에 기록
  • 메일 발송 실패 로그의 기록을 검사하고 개발자에게 알림
  • 또 스팸메일(유효성 불확정)으로 취급되지 않도록 메일 본문에 수신자의 이름을 넣는 것이 좋다.또한 애플리케이션에서는 SendGrid가 사용됩니다.요청을 com에 보낼 수 있지만 요청을 처리했는지 알 수 없기 때문에 메일을 보내는 로그에 대한 SendGrid입니다.com에서 웹 콘솔에 액세스하여 확인해야 합니다.
    이렇게 많은 메일을 보내도 많은 메일을 받을 수 없기 때문에 메일을 받지 못하더라도 상관없다. 예를 들어 완성 화면에 확인번호 등 메일과 동등한 내용을 표시하는 것 외에 요청 통제 정보를 표시하는 데 주의해야 한다.
    이메일 보내기가 귀찮아요!이 글을 읽은 사람도 메일을 보내는 기교가 있다면 마음대로 댓글을 달아주세요. 다른 댓글도 환영합니다.끝까지 읽어주셔서 감사합니다!

    좋은 웹페이지 즐겨찾기