참고 : JWT를 이용한 간단한 Authentication 예시를 위해 유저 id와 password를 .env 파일에 정의했고 해시된 password를 사용하지 않았다.
로그인을 하면 jwt.sign()을 이용하여 토큰을 발급한다.
jwt.sign(payload, secretOrPrivateKey, [options, callback]) : 자세한 내용 링크
/routes/auth/login.js
const jwt = require("jsonwebtoken"); // 토큰 발급 const token = jwt.sign({ user: id }, process.env.JWT_SECRET, { expiresIn: process.env.JWT_EXPIRES_IN, });
const jwt = require("jsonwebtoken"); // 토큰 발급 const token = jwt.sign({ user: id }, process.env.JWT_SECRET, { expiresIn: process.env.JWT_EXPIRES_IN, });
유저 ID를 payload에 담고 만료 일자(1 day)를 설정했다.
브라우저에 저장되어 있는 토큰을 검증하여 페이지 접근 권한을 부여한다.
jwt.verify(token, secretOrPrivateKey, [options, callback]) : 자세한 내용 링크
/routes/dashboard.js
const jwt = require("jsonwebtoken"); // 유효한 토큰인지 확인 const decoded = jwt.verify(token, process.env.JWT_SECRET);
const jwt = require("jsonwebtoken"); // 유효한 토큰인지 확인 const decoded = jwt.verify(token, process.env.JWT_SECRET);
1. [파일 업로드] 눌러서 파일 선택한다. 2. 선택한 파일을 formData에 추가하고, body에 formData 담아 서버에 POST 요청한다. 3. 클라이언트로부터 받아온
2023-09-15로컬 스토리지, 세션 스토리지, 쿠키의 차이점을 알기 쉽게 페이지 및 API를 따로 구현했다. 프론트엔드에서 fetch 요청 시 옵션으로 credentials: "include"를
2023-08-08퍼블릭화한 S3 버킷의 객체 URL은 https://[버킷명].s3.[버킷리전].awazonaws.com/[객체]로 되어있다. ex) https://doromo-example.s3
2023-07-27Node.js와 express로 백엔드를 구축했다. 백엔드에서 aws-sdk를 이용하여 버킷과 객체에 접근할 것이다. MY_AWS_ACCESS_KEY : IAM 설정에서 발급받은
2023-07-27# Contact : jyw966@naver.com
Copyright © doromo. All Rights Reserved.