美文网首页
2019-08-15 node各种小知识

2019-08-15 node各种小知识

作者: DreamNeverDie | 来源:发表于2019-08-15 19:41 被阅读0次

1.原生接收和设置cookie

const http=require('http')

let app=http.createServer(function(req,res){
    console.log(req.headers['cookie'])
    res.setHeader('set-cookie',"who=me")
    res.write('aaa')
    res.end();
})

app.listen(3000)     

2.原生实现session

const http = require('http')

let session = {}
let app = http.createServer(function (req, res) {
    if (req.url == '/favicon.ico') {
        res.end()
        return;
    }

    let sessionID='';
    if(req.headers['cookie']){

        req.headers['cookie'].split(';').forEach((item) => {
            let [name, value] = item.split('=');
            if (name = 'sessID')
                sessionID = value;
        })
    }

    if (sessionID) {
        if (!session[sessionID]) {

            session[sessionID] = {}
        }

    } else {
        sessionID = Math.floor(Math.random() * 10000000000)

        res.setHeader('set-cookie', `sessID=${sessionID}`)

        session[sessionID] = {}

    }

    session[sessionID].view = session[sessionID].view || 0;
    session[sessionID].view++;

    res.write(`<!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <meta http-equiv="X-UA-Compatible" content="ie=edge">
            <title>Document</title>
        </head>
        <body>
        欢迎你第${session[sessionID].view}次访问本站
        </body>
    </html>`)
    res.end()

})

app.listen(3000)     

相关文章

  • 2019-08-15 node各种小知识

    1.原生接收和设置cookie 2.原生实现session

  • 2019-08-15 koa各种小知识

    1 koa-better-body 和ctx.redirect()重定向的使用 koa下载文件,自定义文件名称 4...

  • Node小知识

    一、检测是否安装成功 二、 node文件 三、自己搭建http服务 四、创建http服务

  • Node 小知识

    运行nodejs的程序,使用命令:node xxx.js,但是关掉终端,程序也关闭了,如何让node app的程序...

  • Node小知识1

    若岁月静好,那就颐养身心;若时光阴暗,那就多些历练。生命中最困惑的,不是没人懂你,而是你不懂自己。没有放弃,怎能拥...

  • 2019-08-15

    2019-08-15

  • Retact 各种小姿势(小知识)

    js命名规则: 只能由字母,数字,下划线和$符号组件 $count 第一个字符不能是数字 235count命名...

  • 小知识点集汇一

    小知识点集汇一 小知识点 node接口模拟返回 js接口模拟数据 mockjs mocha js 测试框架--教程...

  • 学习笔记(5)ht for web----关于吸附父图元

    知识回顾:Node#getHost()和Node#setHost(node)获取和设置吸附的图元对象Node#ge...

  • node的小知识点

    node内存管理问题 在浏览器中,V8引擎实例的生命周期不会很长(因为我们使用完网站就会把网站关闭),而且运行在用...

网友评论

      本文标题:2019-08-15 node各种小知识

      本文链接:https://www.haomeiwen.com/subject/bzdtsctx.html