画像

약 2월초부터 Spotify의 현재 재생중인 노래를 Twitter의 닉네임에 표시 해 주는 어플리케이션을 제작하여서 쓰고 있었는데 이번 기회에 이걸 공개적으로 서비스가 가능하게 호스팅 하는 작업을 진행하였습니다.

소규모 프로젝트다보니 제 단일 인스턴스의 공개IP만 가지고 이것저것 서비스 앱을 띄워서 운용하는 것도 가능했지만 관리의 편리함과 확장성 그리고 체험을 위해 AWS위에서 설계하였습니다.

시간이 날 때 마다 제작 과정을 하나하나 적어가려고 합니다.. 기분파대로 했더니 사실 작업 자체는 불타올라서 2일만에 끝냈지만요 ㅋㅋㅋ

똑같은 앱이 아니더라도 Spotify의 API나 Twitter의 API를 Python3을 활용한 개발에 흥미가 있으신 분들에게 도움이 되면 좋겠습니다.

  • 초기 코드 작성 당시 예전에 움짤 봇을 진행하면서 적어둔 API 기반 코드를 활용하였기에 Twitter는 API 1.0을 활용합니다. 기능의 실장방식은 다를 수는 있어도 여기에서 다룰 주된 내용인 유저의 Access Token 취득부분은 1.0과 2.0이 동일할 것으로 예상합니다.

예상 목차

1. Twitter 3-legged-auth

2. Spotify의 3-legged-auth + Refresh Token

3. SQS를 활용하여 갱신해야 할 데이터의 Queue 생성

4. 간략한 Instance 내부의 Workflow