联系官方销售客服

1835022288

028-61286886

求助 版主:论坛审计组
短信验证安全升级发送前需要图形码认证那接口咋整啊!!我用开发
类型:迅睿CMS 更新时间:2019-11-03 15:18:44

https://www.xunruicms.com/doc/797.html
官方短信验证安全升级,发送前需要 图形码认证,
那API接口咋整啊!!  我用uniapp 开发  无法使用图形二维码!!!

能提供开关吗??或者api接口不进行限制,自己通过前端控制!

回帖
  • 迅睿粉丝
    #1楼    迅睿粉丝
    2019-11-01 18:03:01
    Chrome 0
    可以使用调用验证码图片显示到app中 https://www.xunruicms.com/doc/806.html
  • 迅睿粉丝
    #2楼    迅睿粉丝
    2019-11-01 18:07:32
    Chrome 0
    config/hook.php
    \Phpcmf\Hooks::on('member_send_phone_before', function($phone) {
        // 手机发送验证码时不验证图片验证码
        $code = \Phpcmf\Service::C()->session()->get('captcha');
        if (!$code) {
            $code = 1234;
            \Phpcmf\Service::C()->session()->set('captcha', $code);
        }
        $_GET['code'] = $code;
    });
  • 迅睿粉丝
    #3楼    迅睿粉丝
    2019-11-01 21:26:58
    Chrome 0

    易学习 使用您提供的方法,我测试结果是图片验证码未填写。



    image.png

  • 迅睿粉丝
    #4楼    迅睿粉丝
    2019-11-02 11:30:48
    Chrome 0
    回复迅睿框架创始人


    image.png


    我已经获得了所有的数据,还是无法获得正确的图形码。

    大哥怎么取消这个验证码啊!!我想使用前段的一些插件形式的验证手段。。



    uni.request({
    				url: common.apiUrl + "index.php?s=member&c=api&m=register_code&id=" + _self.userName + "&code=" + _self.code,
    				method: 'POST',
    				header: {'Content-Type': 'application/x-www-form-urlencoded'},
    				data: {},
    				success: (res) => {
    				        console.log(res.data);
    						console.log(_self.userName);
    						console.log(_self.code);
    				    }
    			}),
    易学习 大哥 ,用了您的钩子,结果还是显示验证码未填。上面代码是没带钩子的测试代码。。。我把钩子文件是放在根目录下的config/hooks.php文件里面。
    你代码的意思是查询 图形码 ,如果不存在 设置为1234,如果存在就 用 $_GET['code'] 去获取?是这个意思吗??
    但是实际是显示图片验证码不正确。

    \Phpcmf\Hooks::on('member_send_phone_before', function($phone) {
        // 手机发送验证码时不验证图片验证码
        $code = \Phpcmf\Service::C()->session()->get('captcha');
        if (!$code) {
            $code = 1234;
            \Phpcmf\Service::C()->session()->set('captcha', $code);
        }
        $_GET['code'] = $code;
    });
  • 迅睿粉丝
    #5楼    迅睿粉丝
    2019-11-02 11:50:00
    Chrome 0
    我看错了,我这个方法不能用于注册注册发验证码把code传输过去就行了
  • 迅睿粉丝
    #6楼    迅睿粉丝
    2019-11-02 12:01:49
    Chrome 0
    易学习 我还是想把这个验证码取消,因为现在前端有很多好看好用的验证插件能用。。

    我现在通过前端传验证码,老是说验证码不正确。
  • 迅睿粉丝
    #7楼    迅睿粉丝
    2019-11-02 12:04:01
    Chrome 0
    易学习 注册登陆 都不行。。 后台怎么传啊!!大哥


    image.png
  • 迅睿粉丝
    #8楼    迅睿粉丝
    2019-11-02 12:06:22
    Chrome 0
    改了系统文件容易崩溃,我都不敢改
  • 迅睿粉丝
    #9楼    迅睿粉丝
    2019-11-02 12:10:57
    Chrome 0
    index.php?s=member&c=api&m=register_code&id=手机号码&code=图片验证码的值",
  • 迅睿粉丝
    #10楼    迅睿粉丝
    2019-11-02 12:19:53
    Chrome 0
    冰蓝 我现在使用的就是你这种方法调用的code, 但是我使用uniapp前端获取结果不对!!

    uni.request({
        url: common.apiUrl + "index.php?s=member&c=api&m=login_code&id=" + _self.userName + "&code=" + _self.code,
        method: 'POST',
        header: {'Content-Type': 'application/x-www-form-urlencoded'},
        data: {},
        success: (res) => {
        console.log(res.data);
        console.log(_self.userName);
        console.log(_self.code);
        }
    }),
  • 迅睿粉丝
    #11楼    迅睿粉丝
    2019-11-02 12:20:29
    Chrome 0
    正解冰蓝
  • 迅睿粉丝
    #12楼    迅睿粉丝
    2019-11-02 12:22:13
    Chrome 0
    回复迅睿框架创始人 老大,能取消图形验证码吗??
  • 迅睿粉丝
    #13楼    迅睿粉丝
    2019-11-02 12:30:15
    Chrome 0
    可以,晚上我增加一个开关楼上这个方法是可行的:
    index.php?s=member&c=api&m=register_code&id=手机号码&code=图片验证码的值",
    许丰奕
  • 迅睿粉丝
    #14楼    迅睿粉丝
    2019-11-02 18:15:20
    Chrome 0
    回复迅睿框架创始人 老大,各种方法都试过了,学艺不精没能搞定,,还是请老大弄各开关,我要关了他~~~


    image.png
  • 迅睿粉丝
    #15楼    迅睿粉丝
    2019-11-03 01:27:36
    Chrome 0
    回复迅睿框架创始人 感谢老大深夜加班把短信验证码功能更新了!!这样的服务商,各位看官,没买程序的有什么理由不买!!!!!
  • 迅睿粉丝
    #16楼    迅睿粉丝
    2019-11-03 01:43:49
    Chrome 0
    短信接口解决办法是首席指点的,我顺便把成功获取短信的方法放一下,
    https://xxxxxx/index.php?appid=1&appsecret=xxxxxxx&s=member&c=api&m=login_code&id=18866665555&code=1234",
    红色是的根据最新改变规则后增加的,更新最新程序到后台 系统>>API设置 设置禁用。
    -----------------------------------------------------------------------------------------------------
    不想再立新贴,干脆把短信及注册的问题一起放到这个贴里面一起解决吧~~



    我根据获取的短信,提交注册或登陆,都会提示未发送手机验证码,
    web端 使用短信验证登陆注册都正常
    移动端 不使用手机验证 常规注册登陆正常

    只是api接口在使用sms验证时不正常。

    登陆端api接口地址: https://xxxxxx/index.php?appid=1&appsecret=xxxxxxx&s=member&c=login&m=sms
    注册端api接口地址: https://xxxxxx/index.php?appid=1&appsecret=xxxxxxx&s=member&c=register


    一下截图是我注册时 post提交的数据,开发工具好像显示提交正常,只是服务端返回的是未发送手机验证码

    image.png
  • 迅睿粉丝
    #17楼    迅睿粉丝
    2019-11-03 14:08:51
    Chrome 0
    更新一下程序试试
    满意答案
  • 迅睿粉丝
    #18楼    迅睿粉丝
    2019-11-03 15:18:44
    Chrome 0
    迅睿框架创始人:老大,短信方式注册登陆全部OK了。辛苦了~~ 最后还反馈一个问题,就是注册自动登陆以后,不会返回auth,登陆后才有,我看这个问题前端解决算了。后端如果不麻烦,也可以更新下!!