手机号码格式校验

  1. router.post(‘/register‘,function(req,res,next){
  2. var restResult = new RestResult();
  3. var mobile = req.body.mobile;
  4. if (!/1\d{10}/.test(mobile)){//手机号码格式校验
  5. restResult.errorCode = RestResult.ILLEGAL_ARGUMENT_ERROR_CODE;
  6. restResult.errorReason = "请填写真确的手机格式";
  7. res.send(restResult);
  8. return;
  9. }
  10. var password = req.body.password;
  11. if(!password || password.length < 6){//密码长度校验
  12. restResult.errorCode = RestResult.ILLEGAL_ARGUMENT_ERROR_CODE;
  13. restResult.errorReason = "密码长度不能少于6位";
  14. res.send(restResult);
  15. return;
  16. }
  17. //findOne方法,第一个参数数条件,第二个参数是字段投影,第三那个参数是回调函数
  18. UserEntity.findOne({mobile:mobile},‘_id‘,function(err,user){
  19. if(err){//查询异常
  20. restResult.errorCode = RestResult.SERVER_EXCEPTION_ERROR_CODE;
  21. restResult.errorReason = "服务器异常";
  22. res.send(restResult);
  23. return;
  24. }
  25. if (user){//手机号已注册
  26. restResult.errorCode = RestResult.BUSINESS_ERROR_CODE;
  27. restResult.errorReason = "手机号已注册";
  28. res.send(restResult);
  29. return;
  30. }
  31. var registerUser = new UserEntity({mobile:mobile,password:password});
  32. //调用实体的实例的保存方法
  33. registerUser.save(function(err,row){
  34. if(err){//服务器保存异常
  35. restResult.errorCode = RestResult.SERVER_EXCEPTION_ERROR_CODE;
  36. restResult.errorReason = "服务器异常";
  37. res.send(restResult);
  38. return;
  39. }
  40. res.send(restResult);//返回成功结果
  41. });
  42. });
  43. });
  44. //登陆路由
  45. router.post(‘/login‘,function(req,res,next){
  46. var restResult = new RestResult();
  47. var mobile = req.body.mobile;
  48. if (!/1\d{10}/.test(mobile)){//手机号码格式校验
  49. restResult.errorCode = RestResult.ILLEGAL_ARGUMENT_ERROR_CODE;
  50. restResult.errorReason = "请填写真确的手机格式";
  51. res.send(restResult);
  52. return;
  53. }
  54. var password = req.body.password;
  55. if(!password){
  56. restResult.errorCode = RestResult.ILLEGAL_ARGUMENT_ERROR_CODE;
  57. restResult.errorReason = "密码不能为空";
  58. res.send(restResult);
  59. return;
  60. }
  61. UserEntity.findOne({mobile:mobile,password:password},{password:0},function(err,user){
  62. if(err){
  63. restResult.errorCode = RestResult.SERVER_EXCEPTION_ERROR_CODE;
  64. restResult.errorReason = "服务器异常";
  65. res.send(restResult);
  66. return;
  67. }
  68. if(!user){
  69. restResult.errorCode = RestResult.BUSINESS_ERROR_CODE;
  70. restResult.errorReason = "用户名或密码错误";
  71. res.send(restResult);
  72. return;
  73. }
  74. restResult.returnValue = user;
  75. res.send(restResult);
  76. //更新最后登陆时间
  77. UserEntity.update({_id:user._id},{$set: {lastLoginTime: new Date()}}).exec();
  78. });
  79. });
  80. module.exports = router;

RestResult.js(统一返回数据格式)文件内容如下:

[javascript] view plain copy

    1. var RestResult = function(){
    2. this.errorCode = RestResult.NO_ERROR ;
    3. this.returnValue = {};
    4. this.errorReason = "";
    5. };
    6. RestResult.NO_ERROR = 0;//无错误
    7. RestResult.ILLEGAL_ARGUMENT_ERROR_CODE = 1;//无效参数错误
    8. RestResult.BUSINESS_ERROR_CODE = 2;//业务错误
    9. RestResult.AUTH_ERROR_CODE = 3;//认证错误
    10. RestResult.SERVER_EXCEPTION_ERROR_CODE = 5;//服务器未知错误
    11. RestResult.TARGET_NOT_EXIT_ERROR_CODE = 6;//目标不存在错误
    12. module.exports = RestResult;
时间: 2024-11-07 10:20:04

手机号码格式校验的相关文章

NSString格式校验

在项目开发过程中,NSString类型的变量是经常用到的,而且我们常常会对其格式进行对应的各种校验,你比如,在登录注册的时候,需要验证用户名的长度,用户名的字符组成等等,其实现在也有很多第三方提供的NSString的Category老方便我们做各种判断.由于最近做的一个项目需要判断密码的格式.主要在以下几个方面. 1.判断密码的强度:在一些项目中,不允许密码中出现"123456","123","abcde"等这种比较简单而且有规律的密码. /**

判断用户输入的银行卡号是否正确--基于Luhn算法的格式校验

开发中,有时候,为了打造更好的用户体验,同时减轻服务器端的压力,需要对于一些如,手机号码,银行卡号,身份证号码进行格式校验 下面是判断银行卡号输入是否正确的代码(基于Luhn算法的格式校验): iOS代码: /** *  银行卡格式校验 * *  @param cardNo 银行卡号 * *  @return */ + (BOOL) checkCardNo:(NSString*) cardNo{ int oddsum = 0;     //奇数求和 int evensum = 0;    //偶

iOS之判断手机号码格式是否正确

//判断手机号码格式是否正确 + (BOOL)valiMobile:(NSString *)mobile{     mobile = [mobile stringByReplacingOccurrencesOfString:@" " withString:@""];     if (mobile.length != 11)     {         return NO;     }else{         /**          * 移动号段正则表达式    

验证手机号码格式的代码实例

验证手机号码格式的代码实例: 在一些表单中需要验证手机格式是否正确,当然验证的方式有多种,下面是一段常用的代码. 代码如下: function ismobile(mobile) { if(mobile.length!=11) { alert('请输入合法的手机号码!'); document.form1.mobile.focus(); return false; } var myreg = /^(((13[0-9]{1})|159)+\d{8})$/; if(!myreg.test(mobile)

通过Pojo对象 field 属性加注解实现格式校验,极大的减少代码量

最近做一个接口,接受外系统的报文,通过XStream转换成java对象以后,需要对其中的字段做格式校验.要求如下 传统的方式是硬编码校验,但是对于field很多的情况,代码量暴增.容易出错. String storeCode = uHeader.getStoreCode(); if (StringUtils.isNotBlank(storeCode)) { ParamsUtil.getInstance().checkStrParam(result, storeCode, "抬头-参考订单门店号[

JavaScript email格式校验

无任何依赖,适用于任何平台,javascript特效原始语言编写. 演示:http://www.huiyi8.com/jiaoben/ /*** email格式校验* @param {Object} email 邮件地址内容*/function emailFormatCheck(email){    if ((email.length > 128) || (email.length < 6)) {        return false;    }    var format = /^[A-Z

正则表达式--指定时间格式校验

1.对闰年平年的划分,关键是看2月最后一天是28还是29进行划分 ^((([0-9]{2})(0[48]|[2468][048]|[13579][26])) #闰年,能被4整除但不能被100整除 |((0[48]|[2468][048]|[13579][26])00) #闰年,能被400整除 -02-29) #匹配闰年2月29日这一天.如果不是这一天,则由下面式子继续匹配验证. |([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}

JSON格式校验

<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible"

前端上传数据-图片和视频格式校验

上一篇用 promise 嵌套实现了按 excel 行顺序上传数据,这篇要解决的问题是图片和视频格式校验,图片主要有 jpg png gif 视频 mp4 由于用户选择的资源可能并不是真正的多媒体文件,使用 js 的 file.type 方法获取的文件类型可能不准确,比如将 .xlsx 改为 .jpg, file.type 得到的类型是image/jpeg 客户端拉取资源时,图片和视频的分辨率也一并获取,而上传由前端控制,所以上传时对资源要进行比较准确的判断. 我的判断策略: 判断文件后缀,若不