案例03_验证手机唯一性| 学习笔记

简介: 快速学习案例03_验证手机唯一性。

开发者学堂课程【Ajax 前端开发入门与实战案例03_验证手机唯一性】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/595/detail/8527


案例03_验证手机唯一性

 

目录:

一、手机验证码相关功能开发

二、功能测试

 

一、手机验证码相关功能开发

现在还剩最后一个功能,手机号码微信的一个校验,接下来就把这个功能实现出来。

打开 Sublime ,实现代码之前首先,先把下面这段代码折叠起来。不然的这部分代码可能混淆视听。因为非常有可能在这部分直接写一些相关的代码,这个肯定是不对的。

所有要养成一个良好的习惯,当写了一个比较完整的程序之后,要把它折叠起来。

45   Var emailValue ‘’’

...

70   };

折叠之后就很清晰的知道代码该从下一部分开始写,就不会写的 function 内去了。

所有一定要注意一下写代码要养成好的习惯。

接下来就该对 phone 相关事件进行监听,这个事件是什么?依然是 onblur。

Phone.onblur = function(){};

相关的代码结构写完之后在回来把大括号打开,再继续写代码。这是一个比较好的代码习惯。

Phone.onblur = function(){

};

在 onblur 中将做两件事情,第一件事情是拿到用户所输入的手机号码,接着第二个事情是和服务器进行相关请求。服务器请求可以做单独的封装,减少代码量,后面的课程会进行相关的讲解。

Phone.onblur = function(){

Var phoneValue = phone.value;

// 1 2 3 4

Var xhr = null;

If(window.XMLHttpRequest){

xhr = new XMHLttpRequest();

} else {

xhr = new ActiveX0bject(‘’Microsoft.XMLHTTP’’);

}

xhr.open(‘’post ’’,’’./server/checkphone.php’’,true);

//这两个相关函数是已经固定了的。 

//相关的接口文档会有image.png

Var params = ‘’phoneumber=’’+phoneValue;

//key 相关参数

image.png

xhr.setReqestHeader(‘’Content-Type’’,’’applicaton/x-www-form-urlencoded’’);

xhr,send(params);

xhr.onreadystatechange = function(){

If(xhr.readyState == 4){

If(xhr.status == 200){

//xhr.responseText就是一个字符

var result = xhr.responseText;

//希望将result这样的一个字符串转化为对象

//方便我们获取里面的一些值

result = JSON.parse(result);

var phone.sesult = document.querySelector(‘’#phone_result’’);

If(result.status == 0) {

//代表手机号可用

Phone_result.innerText = result.message.tips + ‘’,’’ + result.message.

Phonefrom;

}else if(result.status == 1 ){

//代表手机号不可用

Phone_result.innerText = result.message;

}

}

//相关文档

手机号可用情况下返回如下:

{

‘’staatus’’:0,

‘’message’’:{

‘’tips’’:’’手机号可用‘’,

phonefrom’’:’’中国电信’‘

}

} 

手机号不可用情况下返回如下:

{

‘’staatus’’:0,

‘’message’’:’‘手机号已被注册’‘

}

//

}

}

};

};

对于手机号码唯一性验证中带了很多信息,在这样一些字符串中获取一些值,相对来说不是特别方便,只有将其转换为对象,才可以方便的获取到 message 、tip、phonefrom 等信息。

所以在用 JSON.parse(result) ;时,是将一个字符串转化为一个对象。但字符串转换为对象,是有格式要求的。

result 字符串必须是 Json 格式规范的字符串。只有 Json 格式的字符串才能通过JSON.parse() 将一个字符串转变为对象。

转变成对象之后就可以通过...的方式获取到这个对象的一些值。

将字符串转化为对象只是为了方便获取一些值。


二、功能测试

编程完成后进行简单测试,刷新界面,切换一下光标。测试手机号可用与不可用相关情况。 

对于最后一个案例需要注意的是,获取数据时是一个字符串。如果这一字符串是一种 JSON 格式的字符串,就可能将其转变为对象。

对象为对象之后可通过...的方式,容易的获取到一些值。

 

相关文章
|
6月前
|
网络协议 JavaScript 前端开发
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名2
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名
1742 0
|
3月前
|
JavaScript NoSQL Redis
Vue中实现修改邮箱、手机号等流程的大致过程、验证码由后端的redis生成验证(版本1.0)
这篇文章记录了在Vue中实现修改手机号和邮箱的大致流程,包括使用过滤器部分隐藏展示的手机号和邮箱,以及通过点击触发路由跳转的便捷方式。文章还描述了旧号码和新号码验证的界面实现,其中验证码由后端生成并通过弹窗展示给用户,未来可以接入真正的手机验证码接口。此外,还提供了修改邮箱的页面效果截图,并强调了学习是一个永无止境的过程。
Vue中实现修改邮箱、手机号等流程的大致过程、验证码由后端的redis生成验证(版本1.0)
|
1月前
|
机器学习/深度学习 算法 数据可视化
UniApp手机滑块验证组件代码生成器
UniApp手机滑块验证组件代码生成器
62 0
|
3月前
|
存储 NoSQL Java
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
该博客文章展示了如何在Linux虚拟机上使用Redis和Jedis客户端实现手机验证码的验证功能,包括验证码的生成、存储、验证以及限制每天发送次数的逻辑,并提供了测试结果截图。
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
|
6月前
|
网络协议 JavaScript 前端开发
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名1
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名
465 0
|
5月前
|
缓存 NoSQL Java
案例 采用Springboot默认的缓存方案Simple在三层架构中完成一个手机验证码生成校验的程序
案例 采用Springboot默认的缓存方案Simple在三层架构中完成一个手机验证码生成校验的程序
109 5
|
6月前
|
JavaScript 前端开发 网络协议
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名3
使用正则表达式验证身份证号、QQ号、手机号、邮箱、地址、邮编、银行卡号、学号、车牌号、快递单号、验证码、ISBN号、网址、IPV4地址、IPV6地址、出生年月日、姓名
421 0
|
5月前
|
网络协议 Android开发 数据安全/隐私保护
Android手机上使用Socks5全局代理-教程+软件
Android手机上使用Socks5全局代理-教程+软件
4700 2
|
6月前
|
监控 安全 Android开发
【新手必读】Airtest测试Android手机常见的设置问题
【新手必读】Airtest测试Android手机常见的设置问题
199 0
|
6月前
|
Web App开发 前端开发 网络安全
前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
【2月更文挑战第21天】前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用
107 1
前端分析工具之 Charles 录制 Android/IOS 手机的 https 应用