Node.js

[06.03] - 쿠키 & 주소별로 파싱 Node.js

ljw4104 2021. 6. 3. 13:14
const http = require('http');

//문쟈열 -> 객체
const parseCookies = (cookie = '') =>
    cookie.split(';')
        .map(v => v.split('='))
        .map(([k, ...vs]) => [k, vs.join('=')])
        .reduce((acc, [k, v]) => {
            acc[k.trim()] = decodeURIComponent(v);
            return acc;
        }, {});

const server = http.createServer((req, res) => {
    console.log(req.headers.cookie);

    if(req.headers.cookie === undefined){
        res.writeHead(200, {"Set-Cookie":"ljw4104=test"});
        console.log('created cookie');
    }
    else{
        const cookie = parseCookies(req.headers.cookie);
        console.log(cookie);
    }

    res.end('Test');
});

server.listen(3000, () => {
    console.log(3000 + "포트에서 서버 대기중...");
})

 

 

const http = require('http');
const fs = require('fs');
const url = require('url');
const qs = require('querystring');

let message;
const server = http.createServer((req, res) => {
    if (req.url.startsWith('/')) {
        message = 'home';
        if (req.url.startsWith('/login')) {
            message = 'login';
            console.log('url : ' + req.url);
            const { query } = url.parse(req.url);
            console.log('query : ' + query);
            const {name, age} = qs.parse(query);
            console.log('name : ' + name);
            console.log('age : ' + age);
        }
    }
    else {
        console.log(message);
    }
    res.end(message);
});

server.listen(3000, () => {
    console.log("서버가 시작되었습니다");
});