quansitech / qrscanner
qrcode websocket workerman
v1.2.0
2020-03-24 10:21 UTC
Requires
- php: >=7.2.0
- vlucas/phpdotenv: ^3.3
- workerman/workerman: ^3.5
This package is auto-updated.
Last update: 2024-12-17 13:22:30 UTC
README
安装
composer require quansitech/qrscanner
使用
配置文件
host=0.0.0.0 port=2346 expire=300 //二维码过期时间,单位秒,不填则默认300秒 ssl=false //是否开启ssl ssl_cert=/var/www/fullchain1.pem //指定ssl 证书 ssl_pk=/var/www/privkey1.pem //指定ssl key
设置扫码业务逻辑
//这里的BindDeveloper必须实现Qrscanner\BusinessContract接口 class BindDeveloper implements BusinessContract{ public function run($param){ //$param为用户设定的参数,后面关于前端配置的部分会说明 //处理客制化的业务逻辑开始 //处理客制化的业务逻辑结束 if($someThingError){ //该错误信息会传递给前端页面,可根据业务需要决定是否展示 return '错误信息'; } else{ //业务正常结束,返回true,完成正常的扫码流程 return true; } } }
封装服务端程序
<?php global $argv; //注册成功扫码后执行的业务逻辑,这里的BindDeveloper就是前面定义的类实例 Business::scanCallBackRegister(new BindDeveloper()); //启动websocket服务端程序 //$argv是命令行传递的参数, 示例中的$argv[1] 接收 start | stop | restart 三个命令 Ws::open($argv[1]); ?>
命令行启动示例
//这里的console.php为前面封装好的脚本 php console.php start --d --config=/var/www/.env
停止服务
php console.php stop
重启服务程序
php console.php restart --d --config=/var/www/.env
安装配置二维码react组件
组件安装和使用方法请移步 传送门