用basicAuth中间件实现身份验证
来源:互联网 发布:手机自动开关机软件 编辑:程序博客网 时间:2024/06/07 05:06
1.服务器代码
var connect = require('connect');process.stdin.resume();process.stdin.setEncoding('ascii');var server = connect();server.use(connect.basicAuth(function(user,pass,fn){console.log('1============');process.stdout.write('allow user \033[96m' + user +'\033[39m'+ 'with pass \033[90m' + pass + '\033[39m ? [y/n]:');process.stdin.once('data',function(data){if(data[0]=='y'){fn(null,{username:user});}else fn(new Error('Unauthorized'));});})).use(function(req,res){console.log('2============');res.writeHead(200);res.end('welcome to the protected area' + req.remoteUser.username);});server.listen(3000);
这个代码非常简单,不需要处理获取主页的(url='/',req.method=='GET'的情况),basicAuth会负责处理,这里通过命令行输入yes,no的形式来处理客户端请求。第一次访问,会弹出要求客户输入用户名,密码的提示框。当第二次访问服务器时,服务器就会记住该用户名密码,并且直接在命令行询问yes or no。如果输入yes,会直接运行第二个中间件(自己写的),然后会向用户返回一个登录成功的提示。
2.运行图解
第一次登录,并输入信息:
服务器反应
返回客户端信息
参考《了不起的Node.js》
0 0
- 用basicAuth中间件实现身份验证
- express的中间件basicAuth详解
- 【Node.js】basicAuth中间件的使用
- web services用soap头实现身份验证
- 用Shiro实现简单的身份验证
- AngularJS+RestfulAPI+BasicAuth+Python/PHP/Node.JS来实现一个最简单的新闻管理后台
- 中间件Phoenix实现用SQL查询HBase
- mysql用maxscale中间件实现读写分离
- apache实现身份验证
- 实现WebService身份验证
- HttpModule实现用户身份验证
- .net继承实现身份验证
- Apache 添加BasicAuth
- [转] 分别用(Windows/Form/Soap/WebService)实现用户身份验证
- 用ASP.Net Forms模式实现WebService身份验证
- 205 laravel 中间件实现
- Laravel中间件实现原理
- Laravel中间件实现原理
- 关于声音函数sound()在codeblocks中的使用问题
- HDU1223 A + B
- 教你如何进入外企!
- 继续补充vim配置技巧——上次的vimrc还不够强力
- PHP学习笔记——魔术方法
- 用basicAuth中间件实现身份验证
- 无所不能的vim-vim到底能做什么
- android中的数据库操作
- Ubuntu12.04系统中JDK7的安装
- 简单的API操作hdfs
- BZOJ 1602: [Usaco2008 Oct]牧场行走
- web开发性能优化---代码优化篇
- 选择IE全部内容,被拷贝到excel
- 开始写博客