接口文档要求

定义方法

    public function index(){
//        验证码标识$id=mt_rand(100000, 999999);$uniqid = uniqid("$id");//返回数据 验证码图片路径、验证码标识$data = ['src' =>"http://www.pyg.com" . captcha_src($uniqid),'uniqid' => $uniqid];return json($data);}

多模块应用需要在路由里添加

Route::get('captcha/:id','\\think\\captcha\\CaptchaController@index')

跨域请求需要在路由结尾加一个

->allowCrossDomain

考虑到前后端分离   验证码以cache缓存

需要在 pyg/vendor/topthink/think-captcha/src/Captcha.php中设置(找到创建验证码(generate)的方法    可以直接复制过去替换掉)

    /*** 创建验证码* @return array* @throws Exception*/protected function generate(): array{$bag = '';if ($this->math) {$this->useZh  = false;$this->length = 5;$x   = random_int(10, 30);$y   = random_int(1, 9);$bag = "{$x} + {$y} = ";$key = $x + $y;$key .= '';} else {if ($this->useZh) {$characters = preg_split('/(?<!^)(?!$)/u', $this->zhSet);} else {$characters = str_split($this->codeSet);}for ($i = 0; $i < $this->length; $i++) {$bag .= $characters[rand(0, count($characters) - 1)];}$key = mb_strtolower($bag, 'UTF-8');}$hash = password_hash($key, PASSWORD_BCRYPT, ['cost' => 10]);cache('captcha', ['key' => $hash,]);return ['value' => $bag,'key'   => $hash,];}

然后找到  验证码是否正确(check)方法将里面session 改成cache (可以直接复制粘贴过去替换掉)

 /*** 验证验证码是否正确* @access public* @param string $code 用户验证码* @return bool 用户验证码是否正确*/public function check(string $code): bool{if (!cache('captcha')) {return false;}$key = cache('captcha')['key'];$code = mb_strtolower($code, 'UTF-8');$res = password_verify($code, $key);if ($res) {cache('captcha');}return $res;}

thinkPHP6验证码接口相关推荐

  1. SpringSecurity-短信验证码接口开发

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:一个线程池 bug 引发的 GC 思考!个人原创+1博客:点击前往,查看更多 链接:https://segmen ...

  2. php短信接口加密_PHP短信接口、PHP短信验证码接口源码

    PHP短信接口.PHP短信验证码接口源码 时间:2016-06-13 11:53 来源:原创 作者:admin PHP短信接口文档源码,PHP发短信接口,PHP在线发短信,PHP微信发短信接口 /* ...

  3. 短信验证码接口的应用场景和优势

    短信验证码接口是常用于网络平台的一种短信功能接口,它在用户注册登录.密码找回.账户变更.确认支付.活动认证等场景都会应用到,短信接口作为网络平台与用户之间重要交互手段,凭借其速度快.到达率高.安全性好 ...

  4. 【django】图形验证码接口设计、后端逻辑、前端逻辑【15】

    一.原理图 将后端⽣成的图⽚验证码存储在redis数据库2号库 结构:{'img_uuid':'0594'} 二.创建验证码⼦应⽤ python ../../manage.py startapp ve ...

  5. 调用图形验证码接口时,为什么要在接口后方添加随机数

    问题:今天在写登录模块调用图形验证码时,发现图形验证码接口返回的是一张图(即文件流),纠结怎么使用. 解决:将返回结果直接与标签的src属性绑定就行. 在此基础上发现,调用接口的后面要跟一个随机数.这 ...

  6. 图形验证码接口及其重构思想

    文章目录 开发生成图形验证码接口 图片实体 ImageCode 图片接口 ValidateCodeController 在认证流程中加入图形验证码校验 登录页面 安全认证配置不拦截图片路径 测试 图片 ...

  7. 前端调用后台验证码接口

    前端调用后台验证码接口 首先我们后台验证码用hutool包的工具类 引入依赖 <dependency><groupId>cn.hutool</groupId>< ...

  8. 如何防止恶意攻击短信验证码接口

    如何防止恶意攻击短信验证码接口 1 自研技术 2 自研验证码被破解怎么办? 3 所有图形验证码都被破解怎么办? 1 自研技术 1.手机号码限制:限制单个手机号码每天的最大发送次数.超过次数不能发送短信 ...

  9. java防止注册刷短信攻击_java面试(1)如何防止恶意攻击短信验证码接口

    防止恶意攻击短信验证码接口方法 1.手机号码限制:限制单个手机号码每天的最大发送次数.超过次数不能发送短信,可以考虑将手机号码加入黑名单,禁止1天. 2.短信发送时间间隔限制:限制同一个手机号码重复发 ...

最新文章

  1. 【LeetCode】【HOT】20. 有效的括号(栈)
  2. .rpt文件内容读取java_Java 中读取文件内容的 n 中方式
  3. 语言编程思维陈萌_这本书告诉你,计算机为何能读懂人类语言,编程思维让你更聪明...
  4. idea maven 删除dependencies_使用IDEA创建Maven工程 创建javase工程
  5. Chrome下的语音控制框架MyVoix.js使用篇(二)
  6. 趣谈网络协议栈,以太网基础MAC和PHY
  7. 计算机网络自顶向下方法 笔记 第一章:计算机网络和因特网
  8. linux 修改网卡 mac地址命令,Centos系统下查看和修改网卡Mac地址(附ifconfig命令格式)...
  9. 转:如何在艰难时期留住好员工
  10. 紫光同创 FPGA 开发跳坑指南(五)—— DDR3 控制器 IP 的仿真
  11. 微信群控系统源码的实现原理,核心源码实现,核心框架。
  12. 连接网络-第三章测试
  13. matlab里trim函数,matlab 中trim函数总出现Index exceeds matrix dimensions,求大神帮忙解决...
  14. Android手机通知栏工具,安卓通知栏美化工具(Flat Style Colored Bars)
  15. 游戏开发笔记(一):一元夺宝
  16. launcher功能入口(二)
  17. 解决VisualVm的Profiler一直转圈:正在连接到目标 VM...
  18. Python安装包,官网下载太慢解决方法:淘宝国内镜像
  19. OriginPro,如何把软件Origin切换变成中文显示
  20. postman查看response_Postman教程——响应

热门文章

  1. 【蓝桥】算法训练 Beaver‘s Calculator(贪心)
  2. Linux下线程池概念详解以及代码演示
  3. php if多条件,php – 多个IF语句条件
  4. VM中的Ubuntu能ping通外网浏览器不能上网
  5. 运维自动化之salt
  6. python直角坐标转极坐标_Python在OpenCV里实现极坐标变换功能
  7. Unity 3D 三维模型简介||
  8. ADS学习:统计分析——蒙特卡洛分析、良率分析
  9. 如何批量将 Excel 文档转为 Svg 格式
  10. 医院管理系统数据库设计