Azure 함수 앱을 사용하여 COVID19 통계 뉴스레터 만들기

4967 단어 azureserverlesspython
내 블로그 시리즈인 Fun with Function Apps에 오신 것을 환영합니다. 여기서 우리는 놀라운 사용 사례를 통해 구현된 함수 앱에 대해 배울 것입니다.

이 블로그에서는 COVID-19 India 일일 통계로 구성된 뉴스레터를 만드는 데 도움이 되는 HTTP 트리거 및 타이머 트리거라는 두 가지 기능 앱을 만듭니다. 사용자는 website을 통해 뉴스레터를 구독하거나 구독 취소할 수 있습니다.

시작하자...

솔루션의 아키텍처는 다음과 같습니다.

전제 조건


  • Azure 계정 - (무료)
  • 기본 Python 프로그래밍
  • 기본 웹 개발 기술(HTML, CSS 및 JS)

  • Warning: Kindly be aware of the incurring costs 
    

    1단계. 저장소 계정 설정



    Azure Portal로 이동하여 저장소 계정을 만듭니다. 스토리지 계정에서 ParitionKey, RowKey 및 email을 해당 열로 사용하여 테이블을 만듭니다.
    나중에 사용할 수 있도록 테이블 이름, 저장소 계정 이름, 키를 기록해 둡니다.


    2단계. HTTP 트리거 함수 앱 만들기



    HTTP 트리거 함수 앱의 목적은 구독 및 구독 취소 작업을 수행하는 것이며 해당 데이터는 스토리지 계정 테이블에서 업데이트됩니다.

    여기에 제공된 단계에 따라 Python HTTP Trigger Function App

    init.py 코드를 다음으로 바꾸고 필요한 모든 요구 사항을 대체합니다.




    앱을 배포한 후 함수 URL을 복사합니다.



    구독하려면[email protected]

    < function url >/api/HttpTrigger?action=subscribe&email= [email protected]



    구독 취소하려면[email protected]

    < function url >/api/HttpTrigger?action=unsubscribe&email= [email protected]


    3단계: SendGrid 계정 생성



    메일을 보내려면 SendGrid 계정이 필요합니다. steps을 따라 SendGrid API 키를 생성하세요.


    4단계: 타이머 트리거 함수 앱 만들기



    이 튜토리얼의 단계에 따라 타이머 트리거 기능 앱을 만드십시오. 또한 Python 런타임을 선택했는지 확인하십시오.

    IST 오후 6시에 코로나19 이메일 뉴스레터를 모든 구독자에게 보내야 합니다.



    NCRONTAB 일정 사용: 0 30 12 * * *



    함수.json 파일에 SendGrid 바인딩 추가




    {
      "scriptFile": "__init__.py",
      "version": "2.0",
    
      "bindings": [
        {
          "name": "mytimer",
          "type": "timerTrigger",
          "direction": "in",
          "schedule": "0 30 12 * * *"
        },
        {
          "type": "sendGrid",
          "name": "sendGridMessage",
          "direction": "out",
          "apiKey": "sendgrid_api",
          "from": "[email protected]"
        }
      ],
      "disabled": false
    }
    


    일정에 맞게 이메일을 보내기 위한 init.py는 다음과 같습니다.




    <script id="gist-ltag"src="https://gist.github.com/Vivek0712/234475d80b1ec7e0ca84e2efeb37c738.js"/>


    이제 Azure Portal -> 구성에서 함수 앱으로 이동합니다. 애플리케이션 설정에서 "sendgrid_api"키를 생성하고 이전 단계에서 생성한 Send Grid API 키를 붙여넣습니다.



    5단계: Azure Static Web App Service에 웹사이트 생성 및 배포



    사용자가 자신의 이메일 주소를 입력하여 가입/해지할 수 있는 간단한 웹사이트를 만드세요. 이에 대해 각각의 HTTP 트리거 함수 URL을 호출합니다.





    Github 계정을 만들고 모든 소스 코드를 푸시합니다.



    이제 웹앱을 Azure Static Web App Service에 배포합니다.



    <올>
  • Github에서 리포지토리를 생성하고 모든 소스 파일을 업로드합니다.
  • Azure Portal -> Azure Static Web App(미리 보기) -> 만들기로 이동합니다
  • .
  • 관련 세부 정보를 입력하고 배포 세부 정보를 위해 Github 계정으로 가입합니다.
  • 저장소와 분기를 선택하십시오.
  • 만들기


  • 앱이 배포되면 웹사이트의 URL을 볼 수 있습니다. URL을 복사하고 HTTP 트리거 함수로 이동합니다. 그 아래에 CORS로 이동하여 웹사이트 URL을 붙여넣습니다.



    축하합니다! COVID-19 통계 뉴스레터를 만들었습니다.



    자유롭게 제 GitHub Repo를 포크하여 더 흥미로운 사용 사례를 찾아보세요.



    <사업부 클래스="readme-개요">

    비벡0712 / 코로나 뉴스레터


    Azure 함수 앱을 사용하여 COVID-19 인도 통계 뉴스레터 만들기





    이 글을 끝까지 읽으셨다면 동료 개발자에게 좋아요를 누르고 공유하세요. 의심, 도움, 제안 및 피드백이 있는 경우

    를 통해 저에게 연락하십시오.

    좋은 웹페이지 즐겨찾기