Nodejs - auth

정종찬·2022년 5월 19일
0
    게시판 회원만 가능한 게시판을 구현하고 싶다
                                    Oauth2.0 -> authorization / JWT / CORS
    client front-server back-server auth-server 
    cookie -> 화면                  // 따로 관리하고 귀찮.. 서버가 증설되도 이것만 추가
           <- 화면
    data request ------>   ------>  cookie (token) 잘살펴봅니다
                 <------


URL auth

host 

protocol  +  auth           +        hostname       +    port
http://      jch:1234   @        localhost      :   3005
             다른사람이 내 서버에 접속했을때 검증하는것
             id : password  @
http request message 
Authorization < header 내용추가
auth1.js
const express = require('express')
const app = express()
const cors = require('cors')

app.use(cors())

const auth2 = (str, req, res, next) => {
    // console.log(req.headers)
    // authorization: 'Basic ampjaDoxMjM0' = req.headers.authorization.split('Basic') ['', 'ampjaDoxMjM0'] 앞은 타입 뒤는 결과값
    //console.log(req.headers.authorization.split('Basic')[1].trim())
    const data = req.headers.authorization.split('Basic')[1].trim() // ampjaDoxMjM0
    // console.log(data)
    console.log(Buffer.from(data, 'base64').toString('utf8').split(":")) // base64를 디코딩

    // token JWT
    // type Bearer [JWT]
    next()
}

app.use((req, res, next) => {    
    auth2('hello world!!', req, res, next)
})

const auth = (req, res)=>{
    res.send('hello world!!')
}

app.get('/', auth)


app.listen(3005, ()=>{
    console.log('서버시작')
})


profile
dalssenger

0개의 댓글