zoukankan      html  css  js  c++  java
  • 【session】

    users.json

    {
        "tobi": {
            "password": "ferret",
            "name": "Tobi Holowaychuk"
        }
    }

    session.js

    var connect = require('connect')
    var users = require('./users')
    
    var server = connect(
        connect.logger('dev'),
        connect.bodyParser(),
        connect.cookieParser(),
        connect.session({secret: 'my app secret'}),
        function(req, res, next) {
            if ('/' == req.url && req.session.logged_in) {
                res.writeHead(200, {'Content-Type': 'text/html'})
                res.end('Welcome back, ' + req.session.name + '<a href="/logout">Logout</a>')
            } else {
                next()
            }
        },
        function(req, res, next) {
            if ('/' == req.url && 'GET' == req.method) {
                res.writeHead(200, {'Content-Type': 'text/html'})
                res.end([
                    '<form action="/login" method="POST">',
                        '<input type="text" name="user">',
                        '<input type="password" name="password">',
                        '<button>Submit</button>',
                    '</form>'
                ].join(''))
            } else {
                next()
            }
        },
        function(req, res, next) {
            if ('/login' == req.url && 'POST' == req.method) {
                res.writeHead(200)
                if (!users[req.body.user] || req.body.password != users[req.body.user].password) {
                    res.end('Bad username/password')
                } else {
                    req.session.logged_in = true
                    req.session.name = users[req.body.user].name
                    res.end('Authenticated!')
                }
            } else {
                next()
            }
        }, 
        function(req, res, next) {
            if ('/logout' == req.url) {
                req.session.logged_in = false
                res.writeHead(200)
                res.end('Logged out')
            } else {
                next()
            }
        }
    )
    
    server.listen(3000)
  • 相关阅读:
    时间复杂度计算
    SQL Server2012编程入门经典(第四版) 读书笔记
    一些编程试题
    Qt 对话框显示控制按钮
    vc++创建文件目录
    配置ubuntu虚拟机备忘
    Qt QThread 多线程使用
    Qt 程序等待多长时间执行Sleep
    Qt 数字和字符处理总结
    c++ 文件utf-8格式
  • 原文地址:https://www.cnblogs.com/jzm17173/p/3440070.html
Copyright © 2011-2022 走看看