개발 일지✨

내일배움단 프로젝트 챌린지 9일차 개발일지

하루 2022. 1. 15. 00:21

코딩개발일지 시작의 한마디

1/14 (금)

오늘 0% 에서 돌아오지 않던 배터리가 갑자기 완충되면서 고쳐졌다...!!!!

컴퓨터 사야하나 걱정했는데 정말 다행이다ㅜㅜ

 

개발 업무 내용

1. 로그인 토큰 점차적으로 구현해나갈 순서

  • 원래 하던 DB에 데이터를 넘겨주고 확인하는 방식 구현하기
  • JWT 토큰을 활용한 로그인 기능 만들기 (인증)
  • Cookie에 토큰 저장하기
    • 원래는 쿠키에 저장하면 보안성에 취약하지만 처음 구현해보는 것이므로 쿠키부터 해보자!
  • [프론트] Cookie를 'header'에 실어서 서버에 전송하기
    • 토큰 payload에 정보를 담아서 보냄
    • 만료시간은 주로 30분~1시간 / 2시간
  • Decorator (인가)
  • 비밀번호 암호화 - bcrypt

 

2. 검색어 저장

  • 로컬 DB와 연동이 안돼서 구현을 못하는 문제 → DB폴더(?)가 만들어져있지 않은 상태였다.

 

3. 크롤링 속도 개선문제

  • 현재 인스타 검색 자동화와 크롤링 자동화까지 구현하는데 있어 셀레니움을 이용하고있다. 크롤링을 해오는 속도가 느려서, 실시간 태그를 가져오는 작업인데 사용자가 검색되는동안 조금 기다려야하는 시간이 걸리는 문제가 있었다.
    • 크롤링에 시간이 오래걸려서 로딩을 기다리지 않으면서 크롤링을 가져오는 JSON 형식으로 긁어오는 방식을 알아보았다.

 

4. 로그인 POST 시 페이지 이동 (해결)

  • 페이지 이동 시 주소를 입력하는 방법을 알아보고 있다.
  • window.location.href ="이동할 주소"  이 방법은 이동할 주소의 형태를 몰라서 더 알아보고 있다.
  • window.open(/main) : 이 방법은 간단하게 명시해둔 주소로 이동할 수 있다는 장점이 있지만, 팝업창이 열리거나 reload 되면서 이루어질 것 같아서 더 좋은 방법을 알아보고 있다.
  • window.location.href="http://localhost:5000/main" : 이 방법은 프로젝트를 로컬에서만 구현되도록 한다면 써도 괜찮을 방법일 것 같긴 하지만 매번 localhost:5000 을 입력해주어야 한다는게 번거로울거 같아서 알아보고 있다.

 

 

업무 중 이슈/고민/해결내용

  • 셀레니움 크롤링 속도 개선
  • Ajax POST 페이지 이동 방법
  • DB 공유 방법
  • 로그인 토큰 저장 및 전달 방식 

 

 

To-do List

업무 기한
로그인 시 POST 페이지 이동 방법 ~ 1/15 (토)
팀프로젝트 시 DB 공유방법 질문
cookie를 header에 실어서 서버에 전송하는 방법