• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

jwt 관련 질문

20.08.01 18:57 작성 조회수 178

0

안녕하세요 제로초님.

책을 보면서 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();

})

답변 3

·

답변을 작성해보세요.

0

네 맞습니다.

0

답변 감사합니다.

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

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

0

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