//发送验证码public function sendCode(Request $request){$phone = $request->get('phone');if (empty($phone)) {return ['code' => 10001, 'msg' => '手机号不能为空', 'data' => []];}$white = new Number();$res = $white->number($phone);if(!$res){return ['code' => 10002, 'msg' => '手机号不能发送验证码', 'data' => []];}$cache = Cache::get($phone.date("Y:m:d"));//校验每天5次发送限制if($cache > 5){return ['code' => 10003, 'msg' => '每天只能发送五条短信', 'data' => []];}//验证码$captcha = (new Phone())->sendSms($phone);//短信五分钟有效期Cache::put($phone,$captcha,60*5);$num = $cache + 1;Cache::put($phone.date("Y:m:d"),$num,60*60*24);return ['code' => 200, 'msg' => '短信发送成功', 'data' => $captcha];}//绑定手机号public function getPhone(Request $request){$params = $request->post();$captcha = Cache::get($params['phone'].'_code');if ($captcha != $params['code']){Cache::get($params['phone'].'_code',null);return ['code'=>403,'msg'=>'验证码错误','data'=>[]];}$user = new User();$userData = $user->getUserById($params['user_id']);$userData->phone = $params['phone'];$userData->save();return ['code'=>200,'msg'=>'手机号绑定成功','data'=>[]];}
namespace App\Service;class Phone
{public function sendSms($mobile){$smsapi = "http://api.smsbao.com/";$user = "lzc7758521"; //短信平台帐号$pass = md5("asd7758521"); //短信平台密码$code = rand(1000,9999);$content = "您的验证码为".$code."该验证码五分钟内有效,请勿泄露给他人";//要发送的短信内容$phone = $mobile;//要发送短信的手机号码$sendurl = $smsapi."sms?u=".$user."&p=".$pass."&m=".$phone."&c=".urlencode($content);Cache::put($phone.'_code',$code);return $code;}
}
Route::group(['namespace'=>'Api','middleware'=>['CheckJwt','throttle:60,1']],function (){Route::post('zuAdd',[ApiController::class,'zuAdd']);Route::post('phone',[ApiController::class,'getPhoneNumber']);Route::get('sendCode',[ApiController::class,'sendCode']);Route::post('getPhone',[ApiController::class,'getPhone']);Route::post('transfer',[ApiController::class,'transfer']);
});
 //获取验证码getCode(e){let phone = this.data.phone;let token = wx.getStorageSync('token');//发送验证码wx.request({url: 'http://www.transfer.com/api/sendCode',data:{phone},header:{token},success:res=>{if(res.data.code==10002){wx.showToast({title: '手机号不能发送验证码',})}else{return}if(res.data.code==200){wx.showToast({title: '发送成功',duration: 1000,success: function () {setTimeout(function () {}, 1000);}})}}})
},
getPhone(){let phone = this.data.phone;let token = wx.getStorageSync('token');let code = this.data.code;wx.request({url: 'http://www.transfer.com/api/getPhone',data:{phone,code},header:{token},method:'POST',success:res=>{if(res.data.code==200){wx.showToast({title: '绑定成功',duration: 1000,success: function () {setTimeout(function () {wx.reLaunch({url: '/pages/index/index'})}, 1000);}})}}})
},
<view>
<button bindtap="apilogin">登录</button>
<view class="weui-cell__bd" style="margin: 30rpx 0" ><input class="weui-input" bindinput="phone" name="phone" placeholder="手机号" /><view class="captcha"><input class="weui-input" name="code" bindinput="code" placeholder="验证码" /><button type="default" bindtap="getCode"  size="mini">获取验证码</button></view><button style="margin-top:30px;" bindtap="getPhone" type="warn">获取手机号</button>
</view>
</view>
    public function number($phone){$data = self::where('phone',$phone)->first();return $data;}public function getUserById(){$data = self::where('id',1)->first();return $data;}

小程序获取手机号验证码相关推荐

  1. 微信小程序获取手机号组件或即将迎来升级及收费

    据知情人士透漏,继企业微信加好友数量需要收费后,小程序获取手机号组件""即将迎来升级并开启"收费"模式,具体上线时间以"官方公告"为准 以下 ...

  2. uni-app微信小程序获取手机号;微信小程序获取手机号,获取到后需要进行解密;微信小程序获取手机号失败 Error:该appId没有权限

    方法1.uni-app登录加获取手机号解密-直接看此篇即可解决 微信小程序获取手机号注意点: 1.需要先登录,微信小程序登录看这篇 2.手机号获取到时加密的,需要后端解密或者前端自己解密(解密时候就会 ...

  3. php7.4 微信小程序获取手机号

    第一步应该先接受获取code 然后得到sessionkey和openid 第二步 把openid返回给小程序客户端,同时把sessionkey和openid存入数据库 第三步 小程序获取手机号时把op ...

  4. 微信授权绑定手机号 java_微信小程序获取手机号授权用户登录功能

    小程序中有很多地方都会用到注册用户信息的地方,用户需要填写手机号等,有了这个组件可以快速获取微信绑定手机号码,无须用户填写. 1.getPhoneNumber这个组件通过button来实现(别的标签无 ...

  5. 微信小程序获取手机号登录流程

    微信小程序获取手机号登录流程 首先前端使用wx.login 获取code wx.login({success(res) {if (res.code) {that.setData({code: res. ...

  6. 微信小程序获取手机号,含java后台接口实现

    前言 前面写了一篇 java实现微信小程序加密数据解密_女IT玩家-彬彬的博客-CSDN博客 然后接着写微信小程序如何获取手机号,本文既有小程序的实现代码.也有后台java的实现代码哦!! 小程序实现 ...

  7. 微信小程序获取手机号并解密详解

    微信小程序获取手机号并解密 1 获取手机号 2 解密 2.1 获取所需数据 2.2 解密返回数据 1 获取手机号 获取手机号的过程官方文档有详细的介绍.参考官方链接 要注意的是,此功能只对非个人且完成 ...

  8. 微信小程序---- 获取手机号(微信最新更新)

    微信小程序---- 获取手机号(微信最新更新) 前言:需要将 button 组件 open-type 的值设置为 getPhoneNumber,当用户点击并同意之后,可以通过 bindgetphone ...

  9. php 微信小程序获取手机号_实例讲解微信小程序获取手机号授权用户登录功能...

    小程序中有很多地方都会用到注册用户信息的地方,用户需要填写手机号等,有了这个组件可以快速获取微信绑定手机号码,无须用户填写.本文主要给大家分享微信小程序获取手机号授权用户登录功能,需要的朋友参考下吧, ...

最新文章

  1. Red Hat Enterprise Linux Server release 6.3下ganglia监控系统的搭建
  2. 两个音轨合并_webm格式视频文件合并+weba音频文件无损合并
  3. CVPR 2018 论文解读集锦(9月26日更新)
  4. 消息队列 策略_消息模型:主题和队列有什么区别?
  5. leetcde-27-移除元素
  6. (常用API)正则表达式的概念和作用
  7. Cisco CCNP 笔记(一)
  8. iOS:Cocoa编码规范 -[译]Coding Guidelines for Cocoa
  9. 浅谈函数的重入与不可重入
  10. python staticmethod
  11. beautifulsoup_Py之Beautiful Soup:Beautiful Soup 4.2.0的简介、安装、使用方法
  12. 初学者小白怎么画猫咪主题插画?该怎么去注意其中的细节?
  13. 形式验证——学习笔记
  14. 揭秘你所看不见的技术原理 - 广告推荐系统
  15. 中科大科学岛计算机博士,2017年科学岛分院博士研究生招生拟录取名单公示
  16. matlab 前向欧拉法,前向后项差分和显式隐式欧拉法
  17. 商业贷款和公积金贷款差多少?一组数据告诉你!
  18. YOLOv7详解:实时目标检测新标杆 | Chien-Yao Wang团队与Alexey团队倾力打造
  19. JS中typeof() !== 'undefined'的解释
  20. 在 Chrome 中清除、启用和管理 Cookie

热门文章

  1. 《STM32学习笔记》3——核心功能电路与编程(上)
  2. 混合牛奶(三头牛的故事)
  3. python 报错 can‘t start new thread
  4. app调用另一个app的方法
  5. MySQL PK,FK,视图,索引,引擎总结【12000字概览MySQL】用于查漏补缺
  6. PTA 小赌怡情——题解
  7. torch.nn.Unfold类
  8. OpenStack-Storage(6)
  9. mac OS Big Sur 11 Beta 5发行说明
  10. 《财务自由纲领》+《极图中的财务自由智慧》