初学node.js中实现删除用户路由


Posted in Javascript onMay 27, 2019

一、users_model.js 功能:定义用户对象模型

var mongoose=require('mongoose'),
Schema=mongoose.Schema;
var UserSchema=new Schema({
username:{type:String,unique:true},
email:String,
color:String,
hashed_password:String
});
mongoose.model('User',UserSchema);

二、users_controller.js 功能:为Express服务器实现删除用户路由

var crypto=require('crypto');
var mongoose=require('mongoose'),User=mongoose.model('User');
function hashPW(pwd){
return crypto.createHash('sha256').update(pwd).
digest('base64').toString();
}
//实现删除用户路由
exports.deleteUser=function(req,res){
User.findOne({_id:req.session.user})
.exec(function(err,user){
if(user){
user.remove(function(err){
if(err){
req.session.msg=err;
}
req.session.destroy(function(){
res.redirect('/login');
});
});
}else{
req.session.msg="User Not Found!";
req.session.destroy(function(){
res.redirect('/login');
});
}
});
};

三、user.html

<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="UTF-8">
<title>用户修改</title>
<link rel="stylesheet"type="text/css" href="/static/css/styles.css" rel="external nofollow" />
<script src="https://cdn.staticfile.org/angular.js/1.5.8/angular.min.js"></script>
<script src="/static/js/my_app.js"></script>
</head>
<body>
<div class="form-container" ng-controller="myController">
<p class="form-header">用户修改</p>
<form method="POST" action="/user/update">
<label>用户名:</label>
<input type="text" name="username" ng-model="user.username" disabled><br>
<label>Email:</label>
<input type="email" name="email" ng-model="user.email"><br>
<label>肤色:</label>
<input type="text" name="color" ng-model="user.color"><br>
<input type="submit" value="Save">
</form>
</div>
<form method="POST" action="/user/delete">
<input type="submit" value="删除用户">
</form>
<hr><%=msg%>
<hr>{{error}}
</body>
</html>

四、routes.js 功能:为Express服务器实现处理Web请求路由

var crypto=require('crypto');
var express=require('express');
module.exports=function(app){
var users=require('./controllers/users_controller');
app.use('/static',express.static('./static')).
use('/lib',express.static('../lib')
);
app.post('/user/delete',users.deleteUser);

五、页面显示效果

初学node.js中实现删除用户路由

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 固定悬浮效果实现思路代码
Aug 02 Javascript
高性能JavaScript模板引擎实现原理详解
Feb 05 Javascript
原生JavaScript编写俄罗斯方块
Mar 30 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
Dec 02 Javascript
jQuery实现多级联动下拉列表查询框
Jan 18 Javascript
JS实现左右无缝轮播图代码
May 01 Javascript
AngularJS使用angular.bootstrap完成模块手动加载的方法分析
Jan 19 Javascript
Javascript中数组去重与拍平的方法示例
Feb 03 Javascript
node.js实现登录注册页面
Apr 08 Javascript
详解vue-router 2.0 常用基础知识点之router.push()
May 10 Javascript
Angular resolve基础用法详解
Oct 03 Javascript
编写一个javascript元循环求值器的方法
Apr 14 Javascript
jquery实现动态创建form并提交的方法示例
May 27 #jQuery
jquery实现动态改变css样式的方法分析
May 27 #jQuery
Vue scrollBehavior 滚动行为实现后退页面显示在上次浏览的位置
May 27 #Javascript
通过jQuery学习js类型判断的技巧
May 27 #jQuery
实现高性能javascript的注意事项
May 27 #Javascript
图解javascript作用域链
May 27 #Javascript
node.js命令行教程图文详解
May 27 #Javascript
You might like
php设置允许大文件上传示例代码
2014/03/10 PHP
php通过sort()函数给数组排序的方法
2015/03/18 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
php利用array_search与array_column实现二维数组查找
2019/07/08 PHP
php中加密解密DES类的简单使用方法示例
2020/03/26 PHP
复制本贴标题和地址的js代码
2008/07/01 Javascript
javascript闭包入门示例
2014/04/30 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
JavaScript中this详解
2015/09/01 Javascript
javascript数组克隆简单实现方法
2015/12/16 Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
2016/12/14 Javascript
React之PureComponent的使用作用
2018/07/10 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
如何解决.vue文件url引用文件的问题
2019/01/18 Javascript
[01:04]DOTA2上海特锦赛现场采访 FreeAgain遭众解说围攻
2016/03/25 DOTA
windows系统中python使用rar命令压缩多个文件夹示例
2014/05/06 Python
跟老齐学Python之for循环语句
2014/10/02 Python
在Python中通过threading模块定义和调用线程的方法
2016/07/12 Python
django使用图片延时加载引起后台404错误
2017/04/18 Python
python如何在循环引用中管理内存
2018/03/20 Python
5分钟 Pipenv 上手指南
2018/12/20 Python
利用Python绘制有趣的万圣节南瓜怪效果
2019/10/31 Python
Python基于gevent实现高并发代码实例
2020/05/15 Python
详解window.open被浏览器拦截的解决方案
2019/07/18 HTML / CSS
美国生鲜及杂货电商:FreshDirect
2018/01/29 全球购物
英国屋顶用品和材料超市:Roofing Supplies UK
2019/08/24 全球购物
英国和国际包裹递送:ParcelCompare
2019/08/26 全球购物
英国DIY汽车维修配件网站:DIY Car Service Parts
2019/08/30 全球购物
高三自我评价
2014/02/01 职场文书
学校学习雷锋活动总结
2014/07/03 职场文书
重点工程汇报材料
2014/08/27 职场文书
团队会宣传标语
2014/10/09 职场文书
实习单位证明范例
2014/11/17 职场文书
担保贷款承诺书
2015/04/30 职场文书
体育部部长竞选稿
2015/11/21 职场文书
68句权威创业名言
2019/08/26 职场文书