페이스북 토큰의 자동 갱신

2024년 6월 18일 화요일

Today I Learned

날짜

2024년 6월 18일 화요일

내용

오늘도 미비된 자잘자잘한 마무리들을 열심히 처리했다.

웹훅

쇼피파이에 앱을 출시하기 위해선, 쇼피파이에서 요구하는 웹훅을 처리해야 한다. 대표적으로 앱을 삭제하는 웹훅이 있는데, 어쩄든 여러 종류의 웹훅이 오면 알맞게 처리하는 기능은 만들어놨다. 사실 이번 앱은 테마와 관련된 데이터만 처리하기 때문에 고객정보나 주문정보를 위한 웹훅은 필요없어 쉬웠다.

그런데 앱을 삭제해도 데이터가 사라지지 않았다. 열심히 테스트를 해봐도 요청 자체가 날라오지 않아 어디서 뭐가 잘못됐는지 알 수가 없었다. 기존에 있는 다른 앱들의 코드를 살펴보니 애초에 웹훅을 내가 만들어 줬어야 했다.. 난 쇼피파이에서 알아서 해주는 줄 알았지.. 샵을 설치할 떄 필요한 웹훅을 설치해주는 함수를 추가했더니 잘된다.

액세스 토큰 자동 갱신과 datetime

나의 오지랖 넓은 친절함으로, 유저들의 페이스북 액세스 토큰을 자동으로 갱신해주려고 한다. 유저는 2~3달에 한번 씩 다시 로그인해야 하는 번거로움을 겪지 않아도 된다! 장기 액세스 토큰의 경우 60일 정도가 만료일자라 만료가 일주일 남았다면 갱신해주도록 로직을 추가해주었다.

시간을 계산할 때 자꾸 오류가 발생했다.

shop.facebook_access_token_expires_at - timedelta(days=7) < datetime.now(tz=pytz.utc):

가 원인이였는데, 페북에서 받아 저장하는 만료일은 시간대에 관한 정보가 없어 둘이 연산할 수 없었다. 은근히 거슬린다 datetime

다음 스프린트

스프레드시트에 대용량 데이터를 업데이트 하는 스프린트가 예정되어 있다. 수십만~ 수백만 개의 데이터를 처리해야 한다. 사실 우리 서비스에선 트래픽이 많이 발생하지 않아, 나에게 꽤 도전적인 스프린트일 듯 싶다. 후딱 만들고, 빠르고 잘 효율적으로 돌아가도록 무한 테스트 해 볼 예정

회고

아침 운동은 날 건강하게 해주는 게 맞는가?