jwt 관련 질문

미해결질문
제로초💚 김현진 프로필

안녕하세요 제로초님.

책을 보면서 jwt를 연습중입니다.

요청 헤더에 저장된 토큰을(req.headers.authorization) 사용합니다. 라고 책에 적혀있는데요

req.headers.authorization 확인 시 값이 나오질 않네요.
=> 왜 그런가요?? 어떤식으로 수정을 하면 될까요?


req.cookies를 이용하여 쿠키값을 확인 후 토큰을 검증 후 로그인 기능을 구현해도 상관없을까요?

해당 코드입니다.

const express = require('express');
const jwt = require('jsonwebtoken');

const { user } = require('./models');

var cookies = require("cookie-parser");


const app = express();

app.use(cookies());
app.get('/login', async (req, res, next) => {
  
  let token = jwt.sign({
    email: "cho@naver.com"
  },
    'qlalfaldi', {
      expiresIn: '2m'
    })

    let userOne = await user.findOne({
      where: { email: "cho@naver.com" }
    });

    if(userOne.dataValues.pwd === '1234') {
      res.cookie("authorization",token);
      res.json({
        token: token
      })
      res.end();
    }

})

app.get('/api', (req, res) => {

 console.log(req.headers.authorization); // undefined
  console.log('here', req.cookies);
  res.end();

})
조현영 프로필
조현영 2달 전

요청은 어떻게 보내셨나요? 요청을 보낼 때 headers에 넣어주샤야되고 안 넣으셨다면 쿠키에 들어있습니다.

제로초💚 김현진 프로필
제로초💚 김현진 2달 전

답변 감사합니다.

포스트맨으로 연습을 하고 있습니다. 

클라이언트측에서 요청을 보낼때 header에 담아서 보내야 된다는 말씀이신가요?? 

조현영 프로필
조현영 2달 전

네 맞습니다.

지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스