항해99 1주차 회고록(WIL)

신유빈·2021년 9월 18일
0

항해99

목록 보기
29/37

프로젝트 기간 및 팀소개

프로젝트 기간 : 2021-09-13 ~ 2021-09-17

1. 제작 기간 & 팀원 소개

2021년 6월 7일 ~ 2021년 6월 10일
4인 1조 팀 프로젝트
조원호:총괄서버 개발+기능 개발
구산하:총괄서버 개발+기능 개발
신유빈:전체적인 html+css
하진수:전체적인 html+css

2. 사용 기술

Back-end

-Python 3
-Flask 
-MongoDB 
-bs4
-jinja2
-Flask
-JWT

Front-end

-JQuery 
-html + css 
-부트스트랩
-Bulma

deploy

-	AWS EC2 (Ubuntu 18.04 LTS)

3. 실행화면 


링크:https://youtu.be/CcURKkSu-MU

4. 핵심기능텍스트

1.로그인, 회원가입

  • JWT를 이용하여 로그인과 회원가입을 구현하였다.
  • 아이디와 닉네임의 중복확인이 가능하다.
    2.메인 페이지(카테고리 CRD)index.html
  • JWT를 사용하여 사용자별 카테고리의 네이버 영화를 조회한다
  1. 프로필 RD profile.html
    -JWT를 사용하여 자기가 쓴 글만 조회한다
    -자신의 글을 mongoDB의 '_id' 를 이용하여 삭제한다.(delete)
  2. 영화상세 텍스트detail.html
  • title 값으로 영화 상세페이지로 이동한다
    -모달을 활용하여 글쓰기 버튼을 통해 영화의 리뷰를 작성한다
    -mongdb를 이용해서 저장된 회원정보와 댓글을 달아준걸 표시해준다.

5.JWT와 API

JWT는 JSON Web Token의 약자이다.

용도는 정보교류나 회원인증을 할 때 사용한다.

특징은

Self-Contained방식으로 토큰이 생성될 때 모든 정보가 토큰에 담긴다
URL-safe JSON (URL로 이용할 수 있는 문자로만 구성)
HMAC에 사용되는 signature에 비밀키, 공개키를 모두 사용할 수 있다
JSON에는 \n등의 개행 문자가 존재하므로 BASE64인코딩을 통해
하나의 문자열로 변환한다
이라는 특징이 있다.

장점은

stateless 기반 서비스에 적합하다
scalability(확장성)이 높다
보안성 향상
scalability와는 조금 다른 확장성, 서버의 확장성이 아닌
로그인이 사용되는 분야, 토큰에 포함되는 정보의 종류 등에 대한 확장성이 높다
어떤 디바이스와 도메인에서도 토큰이 유효하면 정상적으로 처리된다
다양한 환경과 언어를 지원한다

단점은

클라이언트 사이드에 저장되므로 DB에서 사용자 정보가 조작되더라도 토큰에 직접 적용하기가 불가능하며 토큰을 새로 발행해야만 한다
서비스가 커지면 토큰이 필요로하는 데이터가 커져 토큰이 커지고
이에 따라 매 HTTP요청의 트래픽 양에 영향을 미칠 수 있다
Header와 Payload가 단순히 BASE64로 인코딩되어있기 때문에
클라이언트 사이드에 토큰 내부의 정보가 노출된다

JWT 구조

API는 Application Programming Interface의 약자이다.

어떤 응용프로그램에서 운영체제나프로그래밍 언어가 제공하는 기능을 재어할 수 있도록 만든 인터페이스를 의미한다.

동작 원리는

API는 사용자로부터 요청을 하면 결과값을 받아 parsing하면 된다
요청방법은 REST, SOAP, XML=RPC 등의 형식이 있다.그 가운데 REST 방식이 사용하게 간단하기 때문에 많은 API 제공 업체들이 REST방식으로 API를 제공하고 있다.

API의 역할

  1. API는 서버와 데이터베이스에 대한 출입구 역할을 한다.
  2. API는 애플리케이션과 기기가 원활하게 통신할 수 있도록 한다.
  3. API는 모든 접속을 표준화한다.

6.느낀점
정말 하루종일 한거같고 조금만 바꾸면 될거같던 것도 내맘대로 휙휙 안바뀌고 노가다를 해야 바껴서 좀 힘들었지만 저희 팀원분들이 다 성실하고 좋은 분들이라 모르는 것도 자료도 만들어주시고 알려주셔서 감사하고 함께 으샤으샤하는 느낌이였다. 일주일밖에 안됬지만 많이 배우고 경험치도 많이 얻은것 같다.이래서 다들 경험이 중요하다고 말씀하는지 알거같은 느낌?

profile
안녕하세요

0개의 댓글

관련 채용 정보