[WIL] 1주차 개발 일지

민지·2022년 5월 15일
0

WIL

목록 보기
1/4

정신없이 짧게 느껴지기도, 느리게 느껴지기도 한 1주차가 지났다.
월요일부터 목요일까지 팀끼리 각 주제를 정해 간단한 웹사이트를 만드는 팀프로젝트가 진행되었다.
우리 팀은 등산을 좋아하는 사람들에게 즐거움과 성취감을 주기 위한, 등산을 하면 인증샷을 올려 미션을 클리어 할 수 있는 웹사이트를 만들고자 했다.

대표적인 기능

JWT

JWON Web Token의 줄임말로, 인증에 필요한 정보들을 암호화시킨 토큰을 뜻한다.
사용자는 Access Token(JWT토큰)을 HTTP 헤더에 실어 서버로 보낸다.

토큰을 만들기 위해 필요한 것

  • 정보 암호화 방식, 타입이 들어가는 Header
  • 서버에 보낼 데이터가 들어가는 Payload
  • Base64방식으로 인코딩한 Header, Payload, SECRET KEY를 더한후 서명되는 Verify Signature

프로젝트 중 만난 jwt관련 에러

  • 로그인 기능 에러
token = jwt.encode(payload, SECRET_KEY, algorithm='HS256').decode('utf-8')

pyjwt 기존 버전에서 jwt.encode() 함수의 리턴값인 바이트 문자열을.decode('utf-8')를 붙여 일반 문자열로 바꾸어주는 코드이다.
2.0.0 버전부터는 jwt.encode() 의 리턴값이 일반 문자열이기 때문에 .decode('utf-8')를 붙이면 에러가 발생한다.

  • 해결방법
token = jwt.encode(payload, SECRET_KEY, algorithm='HS256')

로 바꾸기 or
jwt 2.0.0 버전을 다운그레이드

API

Application Programming Interface의 줄임말로, 서버와 데이터베이스에 대한 출입구 역할을 하여 허용된 사람들에게만 접근성을 부여한다.

  • 토큰 신청하기
  • API에 요청 보내기
r = requests.get("api주소", headers={"Authorization": "Token [내토큰]"})
result = r.json()
  • Ajax로 요청 보내기

프로젝트 중 만난 API관련 에러

  • 서버 배포를 했을 때, 지도 API가 작동하지 않았던 것
  • 해결방법
    네이버 지도 API 토큰을 코드에 제대로 부여하지 못함
    알맞은 토큰으로 수정

이 프로젝트를 하면서 내가 부족하다고 느낀 점은 깃 사용이 너무나 미숙하다는 것! 깃에 대한 이해도를 높이고 자주 사용해 볼 필요가 있음을 느꼈다. 또한 그 날 공부했던 것 정리하는 습관 들이기!

profile
매일 매일 기록하기

0개의 댓글