지난 주말동안 퇴근후에 node.js 코드를 작성했다.
express 사용이 처음이었지만 크게 어렵지 않게 사용할 수 있었다.
테스트 중 CORS 오류가 생겼지만 corsOptoins를 추가해주면서 해결했다.
하지만 배포후에는 404에러가 생겼는데, 한참을 헤매다가 문제의 원인을 알았다.
firebase hosting은 static한 파일을 배포한다.
내가 작성한 node.js 코드는 dynamic하게 웹 페이지를 크롤링하는 코드이므로 firebase hosting을 사용하는 것은 옳지 않다.
dynamic한 파일을 배포하려면 firebase functions를 사용해야한다.
'api를 사용하여 웹 페이지를 dynamic하게 로딩하는 react 프로젝트는 firebase hosting으로 잘 배포되었다. 그런데 firebase hosting으로는 static한 파일만 배포할 수 있다니?'
하지만 내 착각이었다.
js로 작성된 static한 파일을 배포한 것이고, 이 js 코드를 사용해 api 요청을 받으니 결국은 static한 파일을 배포한 것이다.
firebase functions를 사용한다면 이 문제는 해결될 것이다.
다만 걱정되는 부분은, firebase functions를 사용하려면 요금제를 업그레이드해야 한다는 점이다.
월 200만번의 요청까지는 무료이지만 그 이상으로는 종량제 요금이 발생한다.
내 서비스에서 200만번이나 요청이 발생할 것 같지는 않지만, 보안에 신경쓰지 않는다면 누군가의 악의적인 시도로 얘기치못한 요금을 지불해야 할 수도 있다.
코드를 완성하면 보안 관련 리팩토링이 필수적이라고 생각된다.
'Diary' 카테고리의 다른 글
2024.02.14 (0) | 2024.02.14 |
---|---|
2024.02.08 (0) | 2024.02.08 |
2024.02.02 (0) | 2024.02.02 |
2024.02.01 (0) | 2024.02.01 |
2024.01.31 (0) | 2024.01.31 |