이번 주 한 일
프로젝트에서 사용하는 기술 스택/라이브러리와, 선정 이유를 적어주세요.
팀 전체 (리더님께서 필두로 정리해 주세요.)
팀원 개인별로 작성해 주세요. (개인 5분기록 대시보드 캡쳐)
이외에도 기술적인 방향을 잡기 위한 질문을 정리해두시면 가장 좋습니다!
→ 단, “A는 어떻게 구현하나요”의 질문은 삼가주세요.
→ “A와 B를 알아보았는데, 둘 중 A가 낫다고 판단했는데 맞을까요?”의 식의 고민의 흔적을 담아 질문해주세요.
그리고 브랜드별로 신발의 데이터가 1500개가 안될 경우에 페이지가 중간에 끊기게 되는데 계속 15페이지까지 긁어오게 되서 불필요한 api 요청이 생깁니다. break문을 써서 멈추고 싶은데 긁어온 데이터의 results 안에 id가 존재하지 않으면 멈추도록 하려고 했더니 데이터가 존재하는데도 break가 걸려서 어떤 방법으로 요청을 멈춰야하는지 알고 싶습니다.
rapid api 사이트에서 테스트를 해보았을 때 데이터가 9개가 있다고 하는데 코드를 실행해서 데이터를 저장하려고 하면 데이터를 저장하지 못하는데 데이터가 적을 경우에 이런 상황이 발생합니다. 어떻게 해결을 해야 할 지 모르겠습니다.
위 질문에 이어서 만약 현재 상태로 유지하면서 고도화를 하려면 현재 map,filter,2중반복을 타서 오래 걸리는거 같은데 (대략 10초이내) 이걸 변경하는 방법이 있을지 아니면 그냥 구조 자체를 변경해야하는지 궁금합니다.
매일 응모 정보를 긁어오는게 맥스 200개 정도인것같은데 지금 구조는 반복문으로 하나씩 저장하고 있습니다 해본 결과 오류가 나도 해당 응모 정보만 왜 인지 트랜잭션이 알아서 롤백하면서 저장 안하고 나머지는 올바르게 저장하고 있어서 이걸 굳이 저번에 얘기해주셨던 5~10개 저장방식으로 변경해야하는지? 궁금합니다.
그리고 오류가 나는곳이 지금 QueryFailedError: Unknown column 'NaN' in 'field list’ 이건데 api에서 받아올때 해당 키 자체가 없을때 이게 뜨고 있는 상황이어서 엔티티에 nullable처리 해주고 삼항식으로 해당 키값이 없는 경우 null 을 넣도록 해줬음에도 NaN이 뜨는 이유가 뭔지 모르겠습니다!
최인철 : 일반사용자와 카카오로 로그인한 사용자랑 메모를 전부 적을 수 있게 구현을 해야하는데, 일단 일반 사용자는 메모를 작성할 수 있지만, 카카오로 로그인한 사용자는 작성이 되질 않습니다.. 두 사용자 모두 로컬db에 저장이 되어있고, 아직 플로우를 정확하게 이해를 하지 못해서 카카오 로그인이 제대로 된건지도 궁금합니다..
이재헌:
현재 스크래핑을 API 요청으로 받아오고 있습니다. 인섬니아에 제가 만든 스크래핑API를 요청하지 않고 서버를 시작하면 자동으로 스크래핑될 수 있게 하려면 어떤 방식을 써야하는지 알고 싶습니다. https://docs.nestjs.com/techniques/task-scheduling
puppeteer를 쓰고있다가 오버헤드가 엄청나다고 느껴 axios, cheerio를 사용하는 방식으로 바꾸어 url을 가져 오는데까지 성공했지만, 스크롤을 내릴 때 숨어 있던 페이지들이 생겨 어떤 API 요청이 왔을 때 페이지가 로드 되는지는 패킷 분석을 통해 page가 번호 순으로 나열되어있다는 걸 확인하고 아래의 데이터를 콘솔로 찍어 확인했습니다.
posts: { page: 1, pages: 626, total: 6257, limit: 10, _links: { self: [Object], first: [Object], last: [Object], next: [Object] }, _embedded: { items: [Array] } },
위 로그를 확인하고, 5번의 반복문을 돌려 총 50개의 뉴스 url을 뽑고 싶었는데 가져와지지 않는 상태입니다.
그래서 현재 가장 최근에 게시 된 뉴스 10개만 가져와서 뉴스 데이터를 저장하여 조회할 수 있게 해주는 방식을 채택해도 되는지 고민입니다.
숙제: 멘토링 결과 다음 주까지 해올 일
팀원 개인별로 작성해 주세요.
최인철
소셜로그인 플로우를 이해하고, 라이브러리 사용 시 어떤 흐름으로 쓰여지는지를 공부하기.