inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Khóa học giới thiệu đơn giản - từ A đến Z

Lý do sử dụng Store

강좌 범위는 아니지만요...

Đã giải quyết

401

wonsy0851

2 câu hỏi đã được viết

2

스벨트로 프로젝트를 진행하려고 합니다.

vue 학습을 진행하다

스벨트에 매료되어 스벨트를 하려고 하는데

jwt 인증과 관련된 자료를 찾기 힘드네요...

대부분 firebase 와 연동하여 진행하는 내용들입니다.

백엔드는 파이썬 flask오 rest api로 구현하였는데

스벨트에서는 어떤 방향이 좋을까요?

svelte

Câu trả lời 2

1

wonsy0851

빠른 답변 감사합니다!!!

놀라운 속도로 답변이 달렸네요 ㅎㅎ

남은 연휴도 즐겁게 보내세요!

1

beomy

안녕하세요. :)

이런 우연이 있을까 싶습니다! 백엔드는 Node.JS, 프론트엔드는 Svelte로 다음 강의를 촬영하고 있습니다.(강의는 다음달에 오픈 할 수 있을 것 같습니다.) 사용자 인증은 JWT를 사용합니다. 해서, 조금은 도움이 될 수 있을 법한 답변을 드릴 수 있을 것 같습니다.

JWT를 사용해 본 결과, JWT는 단순히 인증 방식이라 백엔드로 무엇을 사용하건, 프론트를 무엇을 사용하건 상관없이 어디든 사용이 가능합니다.

준비 중인 강의에서는 백엔드 Node.JS에서 jsonwebtoken이라는 npm 라이브러리를 사용해서 토큰을 생성하고 프론트에 전달합니다.

프론트에서는 백엔드에서 전달받은 토큰을 로컬스토리지에 저장해서 로그인을 유지 시켜줍니다. JWT 토큰이 만료되면 로컬스토리지에서 삭제해주고요. jwt-decode라는 npm 라이브러리를 사용해서 토큰을 디코딩에 만료시간과 기타 정보를 가져올 수 있습니다.

프론트에서 API를 요청할 때 HTTP 요청 해더에 토큰을 담아 API를 백엔드로 전달합니다. 백엔드에서는 jsonwebtoken 라이브러리의 verify를 통해 유효성 체크를 진행하고, 유효하지 않다면 에러를, 유효하다면 HTTP 요청에 응답합니다.

결론은,

1. 토큰의 생성, 유효성 체크는 백엔드에서 이루어진다. (jsonwebtoken 사용)

2. 프론트의 로컬스토리지에 토큰을 저장해서 로그인을 유지시켜준다.

3. 토큰 만료시 로컬스토리지에서 삭제한다. (jwt-decode로 만료 시간 확인)

4. 프론트에서 백엔드로 API를 요청할 때 토큰을 HTTP 요청 해더에 담아서 보낸다.

이렇게 정리할 수 있을 것 같습니다.

혹시 답변을 확인하시고 더 궁금한 사항이나, 이해가 안가는 부분은 추가 질문 주세요. :)

프로젝트 실행이 되지 않아 menu API 테스트가 불가합니다 ㅠ

0

134

9

프론트 api.js의 요청 headers 옵션의 cors 관련 설정 질문

0

61

2

모듈 버전이 안맞아서 발생하는 문제 같습니다;;;

0

188

2

meteor 버전 때문에 실행이 안됩니다.

0

160

2

graghQL의 transaction 처리속도가 궁금합니다.

0

112

2

질문있습니다.

0

106

2

화면 구성 설명용 도구 이름

0

158

1

Meteor 실행 오류 문의 드립니다.

0

184

1

영호 좋아요 버튼이 콘솔에는 잘 찍히지만 화면에 렌더링 되지 않습니다.

0

129

2

영화목록 component 만들기 에서 질문이 있습니다.

0

209

3

"hello".toUpperCase() 가 안되는데요.

0

148

1

컴포넌트 이벤트

1

314

1

CDN이 뭔가요?

1

1662

1

혹시 다음 강의는 언제쯤??

1

333

2

undefined 없애기

1

388

3

생명주기 중 afterUpdate가 동작하지 않는 이유를 모르겠습니다

2

464

2

이벤트 수식어 중에서 passive 설명이 잘 이해가 되질 않습니다

1

1156

3

질문드립니다 !

1

250

1

이 부분은 좀 어려운거 같아여

1

302

4

import Child 대소문자 차이

1

463

1

npm run dev not working

1

514

3

임포트하는 이유에 대해..

1

274

3

오류가 나요

0

303

1

프레임워크

0

217

1