zoukankan      html  css  js  c++  java
  • 前端 ---- 博客项目

    1.serializeArray()的用法
    获取去表单内容
    //serializeArray()获取表单中的内容但是结果
    [{name:'email',value:'122@qq.com'}]
    [{name:'password',value:'123456'}]  很弱智
    
    //变成Json对象
    function serializeArrayToJson(form){
    	var result = {};
    	var f = $(this).serializeArray();
    	f.forEach(function(itme)){
    		result[item.name]=item.value;
    	}
    	return result;
    }
    
    这样就变成{emal:'122@qq.com',password:'123456'}
    
    
    
    2.密码加密 bcrypt
    	1.使用哈希算法加密的单程加密方式,只能从原始密码加密成特殊密码,不能从特殊密码解密成原始密码
    	2.但是可以通过比对自己之前加密过的数据来判断密码(暴力破解)
    	3.所以需要在加密的密码中加入随机字符串(salt 盐?)来增加密码被破解的难度
    	4.生成随机字符串和对密码加密都是异步函数
    	
    3.cookie和session
    session 如果服务器重启了就失效了
    
    
    4.Joi
    如果写了一大堆规则 没有require,那么传入空的东西也会直接通过
    但是传入的是这个Joi.validate({},schema),而不是这个Joi.validate({name:''},schema)
    
    	//string的min是长度
    	name : Joi.string().min(2).max(5).error(new Error('name有问题')),
    	//number的min是数值
    	birth:Joi.number().min(1900).max(202)
    
    --------------------------------Joi.validate is a not function解决办法·-------------------------------------------
    在npm install joi的时候下载的是最新版本+ joi@17.1.1,对于一些API高版本会舍弃从而出现报错。
    	1.卸载joi
    	npm uninstall joi
    	2.下载14.3.1
    	npm install @14.3.1
    	
    5.JSON.stringify() 可以将对象转换成字符串类型
    JSON.parse(err);  可以将字符串转换成对象
    
    
    6.出现莫名其妙的错误,什么都没错但就是不行,那就把代码重新打一下
    7.User.countDocuments(查询条件)  查询总数, Math.ceil(count/pagesize)向上取整
    8.select选项中,只要option里有selected就是被选中,而两个被选中就会显示后面那个
    所以selected = 'selected':''是错的,因为左边已经有selected了 不管右边是什么都会被选中
    <select class="form-control" name= 'role' >
    	<option  selected="{{use.role == 'normal'?'selected':''}}">普通用户</option>
    	<option  selected="{{use.role == 'admin'? 'selected':''}}">超级管理员</option>
    </select>
    应该是这样
    <select class="form-control" name= 'role' >
    	<option {{use.role == 'normal'?'selected':''}}>普通用户</option>
    	<option {{use.role == 'admin'? 'selected':''}}">超级管理员</option>
    </select>
  • 相关阅读:
    C++设计模式-Bridge桥接模式
    解决VS2010打开Web页面时经常由于内存较低而导致VS2010自动关闭的问题
    Js继承小结
    MAC上的包管理利器
    Objective-C的hook方案(一): Method Swizzling
    OleContainer操作Excel以二进制方式读写数据库
    复制文件时,如何显示进度条(使用TFileStream一点一点读,或者使用BlockRead,并插入application.ProcessMessages)
    ADO异步查询显示进度条
    D2010 RTTI + Attribute 简单实现ORM
    Delphi默认窗体随想
  • 原文地址:https://www.cnblogs.com/otome/p/13704077.html
Copyright © 2011-2022 走看看