devrother / ironmental-backend Goto Github PK
View Code? Open in Web Editor NEWIronMental repository for backend
IronMental repository for backend
구독자에게 메일 보내는 cron job 관련 저장소 생성 후 분리
테스트 코드 작성
기존에 사용하던 interview naming 다른 걸로 변경.
서비스의 방향이 개발상식으로 바뀌면서 interview 이름도 변경해야될 것 같음.
어떤 naming 으로 변경하면 좋을까?
최신글이 상단으로 나오도록 정렬 (태그별 글은 최신순으로 정렬되어 있음)
클린 아키텍쳐 적용
MongoDB 설정
유성성 검사 미들웨어를 만들어 적용하기
메일을 보낼 때, 보낼 콘텐츠가 없는 사용자에 대한 처리.
현재는 handling 로직이 없어서 에러가 나는 상황.
CircleCI 환경변수 생성 및 설정
#10 문제로 우선 AWS Lambda를 VPC에서 제거함. 우선 기능 개발이 완료되면 VPC, NAT 설정 예정
API 문서 작성
GET /interviews
요청시 tag
파라미터 값을 1
과 같은 숫자형태의 문자열로 넘기면 그냥 통과되어버림.
Apple 기기의 메일 앱에 한정된 버그.
구독인증 메일 중,
이메일 인증을 하고 다음주 월요일부터 구독을 하고 싶으시다면 여기를 눌러주세요!
-> 여기
링크를 눌렀을 시, 링크가
x-webdoc://662BAD4D-2B30-4026-A460-498291D2435C/ironmental.net/auth/confirm/{confirmCode}
과 같은 형식으로 변환되기 때문에 제대로 작동하지 않음.
정확한 링크가 전달되어 구독인증이 이루어지는 것.
구독자에게 보내는 메일 형식 꾸미기
데이터가 10개 있을 떄 interview data 를 transforming 하여 보낼때 HATEOAS 값이 null 로 오면 안되는데 null 값으로 옴.
요청 : /dev/v1/interviews?tag=javascript
응답 :
{
"datas": [...],
"links": {
"prev": null,
"next": "{개발서버URL}/dev/v1/interviews?tag=javascript&offset=4&limit=4"
}
}
그 다음 요청 때 문제가 발생됨.
요청 : /dev/v1/interviews?tag=javascript&offset=4&limit=4
응답
{
"datas": [...]
"links": {
"prev": "{개발서버URL}/dev/v1/interviews?tag=javascript&offset=1&limit=4",
"next": null
}
}
와 같이 데이터가 2개 더 남아있는데 next
값이 null 이라서 front 쪽에서 데이터를 더 못불러옴.
Amazon sns를 통해 반송 or 수신거부 메일을 처리.
(반송 메일에 대한 handling logic이 없으며, 반송률이 일정 이상 넘어가게 되면 Amazon 측에서 ses 서비스에 대해 해당 계정을 영구차단함.)
리펙토링
도메인 생성 및 관련 설정
AWS Certificate Manager 의 미국 동부(버지니아 북부) us-east-2
에서 발급받음. API gateway 에서 Custom Domain Names 설정이 us-east-2
리전에서 발급 받은 것만 가능하기 떄문.
도메인 생성 및 설정
참고자료 -
Deploy the Frontend
구독자 인증할 때 사용한 confirmCode 대신 objectid 를 사용해도 될 것 같아 subscriber collection 에 confirmcode(uuid) 를 제거.
AWS Lambda 에서 SES sendMail 사용시 timeout 되는 문제발생
Connecting to SMTP server from AWS Lambda
Node Lambda times out when I query MySQL and try to send an email via AWS SES
import
와 module.exports
를 같이 사용하여 Error 발생
Cannot assign to read only property 'exports' of object '#<Object>'
yarn offline
으로 local 에서 테스트를 진행했을때 발생하였는데 배포를 할 경우에도 발생할 것으로 예상.
ref: Cannot assign to read only property 'exports' of object '#Object' (mix require and export) #4039
위 문서를 참고해서 해결할 수 있을 것 같음
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.