1. node服务器搭建+数据库的连接
此处操作比较简洁易懂,可参考:node服务器快速搭建
2. 短信api的使用
对于短信api ,此处以 阿里云的短信服务为例(只要是有短信服务的平台皆可使用)
2.1 登录平台进行参数配置
1. 进入短信控制台,对要发送的短信格式进行配置,如果没有签名,需要申请签名后操作
2. 点击查看 API Demo 进入配置生成的api;此时选择 Node.js
2.2 根据生成的api 在项目中使用
代码注释详尽
const Core = require('@alicloud/pop-core'); //cwen 调用阿里短信模块(需先安装) //cwen 对阿里短信服务API进行配置 let client = new Core({ accessKeyId: '<accessKeyId>', // 需要先申请(步骤在下文) accessKeySecret: '<accessSecret>', // 需要先申请(步骤在下文) endpoint: 'https://dysmsapi.aliyuncs.com', //无需更改 apiVersion: '2017-05-25' //无需更改 }); //cwen 请求方式 let requestOption = { method: 'POST' }; //# 生成随机四位数,模拟验证码 function rander(max, min) { return Math.floor(Math.random() * (max - min)) + min } //# 存储手机号+验证码(方便验证) var loginInfo = []; //# 验证手机号是否已经发送个验证码 let validate = (phone) => { return loginInfo.some(item => item.phone === phone) } //# 验证验证码是否一致 let validateCode = (phone, code) => { return loginInfo.some(item => (item.phone === phone && item.code == code)) } //cwen 用阿里云api发送短信验证(验证码登录) let sendLoginCroeCode = async(req, res) => { let { phone } = req.body; let randCode = rander(1000, 9999); var params = { "RegionId": "cn-hangzhou", "PhoneNumbers": phone, // 客户端手机号 "SignName": "小陈应用ya", //签名 "TemplateCode": "SMS_197625305", //模板,用于发送文字信息 "TemplateParam": JSON.stringify({ 'code': randCode }) //指定要发送的验证码(此处以rander 函数为例) } //# 发送验证码之前判断手机号是否注册过 if (await isRegister(phone)) { // 此处为数据库操作(可忽略) client.request('SendSms', params, requestOption).then((result) => { if (result.Code == 'OK') { res.send({ status: 200, msg: '发送成功' }); loginInfo.push({ phone: phone, code: randCode }); console.log(randCode) } else { res.send({ status: 400, msg: '发送失败' }) } }) } else { res.send({ status: 400, msg: '该手机号未注册' }) } } //# 验证码登录接口 let phoneCodeLogin = async(req, res) => { let { phone, code } = req.body; if (validate(phone)) { //判断手机号是否发送过验证码 if (validateCode(phone, code)) { // 判断验证码与手机号是否匹配 let user = await isFirstLogin(phone); // 此处为数据库操作,获取用户信息(可忽略) res.send({ status: 200, msg: '登录成功', data: user[0] }) loginInfo = []; // 登录成功,立马清空数组,以免无法再次发送验证码 } else { res.send({ status: 400, msg: '验证码错误' }) } } else { res.send({ status: 400, msg: '未获取验证码' }) } } // 注意:最后记得把接口暴露出去
注意:accessKeyId、accessKeySecret
需要先申请再使用
3. 使用接口登录
此处以Postman 接口调试工具为例,手机号为数据库中注册过的手机号
请求发送验证码
手机收到验证码
验证码登录
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 苏文劭《雨停出来走走》[FLAC/分轨][210.76MB]
- 群星《2024好听新歌04》十倍音质WAV分轨
- 陈宁《弹指之间HQ》头版限量[低速原抓WAV+CUE]
- 陈宁《故人还》HQCDII限量签名版[低速原抓WAV+CUE]
- 苏文劭《春曲(Lessons)》[320K/MP3][39.8MB]
- 苏文劭《春曲(Lessons)》[FLAC/分轨][97.78MB]
- 群星《2006香港高级视听展原音精选 SACD》[ISO][2G]
- 张琍敏1977-枫林小雨[台湾复刻版][WAV+CUE]
- 林一峰2014-COOKINGMUSIC[香港首版][WAV+CUE]
- 张国荣.2003-一切随风【环球】【WAV+CUE】
- 群星1990-6Pair半+城市民歌白金珍藏版[香港首版][WAV+CUE]
- 群星1990-悲情城市SACD[欧洲版][WAV+CUE]
- 吕继宏2010-北国之恋[中唱][WAV+CUE]
- 《许巍4CD合集》[FLAC][1.3G]
- 群星《全民诵唱》宝丽金50周年之本地篇3CD[WAV+CUE][1.8G]