목록개발/프로젝트 (7)

URL : https://asst.world 3주 전부터 프론트엔드 공부를 진행했다. 이유로는 두 가지가 있는데, 첫 번째는 취업 후 프론트엔드에 대한 이해가 있다면 협업에 도움이 되지 않을까 하는 생각과, 두 번째로는 혼자 온전한 웹 페이지를 만들고 싶다는 이유 때문이었다. 1. 기획 의도 이후 인프런을 통해 프론트엔드 강의를 들으면서도, 혼자 산책하며 만들어 볼 웹 페이지에 대해 구상했다. 이윽고 결정내린 페이지 주제는, 간단한 테스트와 한국사, 문학에 대한 개인적인 관심을 융합하여 "나와 성향이 비슷한 조선시대 예술가 찾기"로 기획했다. 개인적인 의견으로 인스타그램에 종종 올라오는 "~~테스트 결과"와 같은 게시물의 등장 빈도가 잦다 보니, 이를 활용하여 웹 페이지에 광고를 달아 수익을 얻는 방법도..

1. 팀장으로서의 프로젝트 후기 2. 백엔드 개발자로서의 프로젝트 후기 3. 프로젝트 사용한 기술 스택 1. 팀장으로서의 프로젝트 후기 저는 캠프 내 프로젝트에서 팀장으로 팀을 이끌었습니다. 프로젝트 초반에는 대부분의 팀원이 초심자인 것에 비해, 상대적으로 큰 규모의 프로젝트를 기획하였습니다. 소속된 부트캠프에서 모든 기수를 통틀어 역사의 남을 만한 결과물을 만들고 싶다라는 욕심과, 다양한 리더 경험이 있었던 저로서는 무엇이든 해낼 수 있을 것이라는 자신감 때문이었습니다. 프로젝트 초중반까지는 모든 것이 순조로웠습니다. 모든 팀원들과 끊임 없이 소통과 피드백을 진행했고, 가끔은 기획의도와 크게 변하지 않는 선에서 조금씩 프로젝트 방향을 수정하기도 하며, 계획한대로 프로젝트를 만들어 나갔습니다. 하지만, ..

This operation has been blocked as a potential Cross-Site Request Forgery (CSRF) 해당 오류는 포스트맨에서 프로필 사진 업로드 기능을 만들던 중 나타난 오류다. 이 오류에 대해서는 이틀 쯤 고민했는데 처음에는 내 코드 자체에 문제가 있는 줄 알았다. (심지어 콘솔에서 error를 찍어두어도 error 메세지가 등장하지 않았다.) 이를 해결하기 위해 이전 수업 때 작성해두었던 코드를 옮겨 써보고, 타인의 컴퓨터에도 내 소스 코드를 보내 업로드 시켜봐도 같은 문제가 등장할 뿐이었다. 그러던 중 구글에서도 정보를 찾다가 아래와 같은 사이트를 발견했다. https://www.apollographql.com/docs/router/configuratio..

오늘은 비밀번호 분실 시 메일 보내는 API를 추가했다. yarn add @nest-modules/mailer nest-mailer 이전에 node.js에서 node-mailer를 사용해 본 적이 있어 사용이 그리 어렵지는 않았다. https://github.com/nest-modules/mailer/blob/master/docs/mailer.md 먼저, 모듈에서는 docs 에서 제공하는대로 작성했는데, 내가 필요로 하지 않는 기본값이나 템플릿은 제거했다. // Mail.Module @Module({ imports: [ // 중략 // MailerModule.forRootAsync({ useFactory: () => ({ transport: { service: process.env.MAIL_SERVICE..

포스팅 분량이 그리 많지 않다. async findLocation({ interest, findAroundUsersInput, }: IMapServiceFindLocation): Promise { // 중략 // const aroundUsers = await client.georadius( "geoSet", centerLng, centerLat, radius, "km", "withCoord", ); // 여기서부터 const userIds = aroundUsers.map((el) => (el = el[0])); // 유저 아이딧값만 매핑 const locationByUsers = aroundUsers.map((el) => (el = el[1])); // 유저 위칫값만 매핑 // 여기서 slice를 쓰는 ..

오늘은 upco 프로젝트 진행 중 알게 된 geo API 에 대해 포스팅한다. geo API geo API 는 Redis에서 제공하는 서비스 중 하나로 그 이름 말마따나 지리적 위치에 대한 API를 의미한다. 내가 geo API를 선택한 이유로는, 이미 사용해본 적 있는 redis 내에서 서비스한다는 이유도 있었지만 '특정 위치를 기준으로 특정 범위 내에 존재하는 데이터를 반환'할 수 있는 메서드가 존재한다는 것이 그 이유였다. 먼저 위치 정보를 저장하는 로직에 대해 다룬다. async saveLocation({ email, location }): Promise { const { lat, lng } = location; // redis 환경 셋팅 const redisInfo: RedisOptions = ..

코드캠프 내 프로젝트 시작 후 일주일이 지났다. 오늘은 그간 있었던 내용들을 포스팅하고 최대한 시간순서대로 정리하는 시간을 가져본다. 1일차. 프로젝트 첫날은 팀원 배정 후 역할을 나누었고, 나는 팀장을 맡게 되었다. 장(長)의 역할은 익숙한 편이라 자신이 있었다. 역할을 선정한 이후에는 어떤 서비스를 만들지 함께 고민했다. 내가 제시한 아이디어는 기각되었지만, 아이디어가 변형되어 결국 '실시간 유저들 위치정보를 제공하는 동네친구 찾기 서비스'로 결정되었다. 단순히 한 사람의 위치정보가 아닌, 다른 유저들의 위치정보까지 제공하는 기능, 채팅을 포함한 화상채팅 기능을 넣어 다른 팀들과 다른 차별점을 둘 수 있다는 것이 그 이유였다. 이후 팀장으로서 주말동안 할 것에 대해, 각자의 역할에 따라 할 일을 부여..