tekintian / tekintcaptcha
腾讯验证码,腾讯防水墙,验证码,滑动验证码,智能滑动验证码PHP扩展,TekinTCaptcha - 一个用于腾讯验证码的客户端库,该服务可保护网站免受垃圾邮件和滥用。
Requires
- php: >=5.6
Requires (Dev)
- phpunit/phpunit: ^6.5
This package is auto-updated.
Last update: 2024-09-22 00:42:04 UTC
README
基于Google PHP项目设计思想实现的腾讯滑动智能验证码PHP中间件。
- 项目页面: http://tekin.yunnan.ws/TekinTCaptcha/
- 仓库: https://github.com/tekintian/TekinTCaptcha
- 版本: 1.0.0
描述
腾讯验证码,腾讯防水墙,验证码,滑动验证码,智能滑动验证码PHP扩展,TekinTCaptcha - 一个用于腾讯验证码的客户端库,该服务可保护网站免受垃圾邮件和滥用。TekinTCaptcha是一个免费的CAPTCHA服务,可保护网站免受垃圾邮件和滥用。
这是腾讯验证码代码,提供了与TekinTCaptcha的第三方集成插件。
安装
Composer(推荐)
Composer 是一个广泛使用的PHP包依赖管理器。此TekinTCaptcha客户端在Packagist上作为 tekintian/tekintcaptcha
提供,可以通过运行 composer require
命令或将其库添加到您的 composer.json
中进行安装。要为您的项目启用Composer,请参阅项目的 入门 文档。
要使用命令添加此依赖项,请从您的项目目录中运行以下命令
composer require tekintian/tekintcaptcha "~1.0"
或者,直接将依赖项添加到您的 composer.json
文件中
"require": { "tekintian/tekintcaptcha": "~1.0" }
直接下载(无Composer)
如果您希望手动安装库(即,不使用Composer),则可以使用主项目页面上的链接克隆存储库或下载 ZIP文件。为了方便,在 src/autoload.php
中提供了一个自动加载脚本,您可以在脚本中使用它,而不是Composer的 vendor/autoload.php
。例如
require('/path/to/TekinTCaptcha/src/autoload.php'); $recaptcha = new \TekinTCaptcha\TekinTCaptcha($aid,$AppSecretKey);
项目中的类是根据 PSR-4 标准组织的,因此您当然也可以使用自己的自动加载器或在代码中直接需要所需的文件。
使用方法
首先,在 http://007.qq.com 为您的站点注册密钥
当您的应用程序接收到包含 Ticket, Randstr
字段的表单提交时,您可以使用它进行验证
<?php $recaptcha = new \TekinTCaptcha\TekinTCaptcha($aid,$AppSecretKey); $resp = $recaptcha->verify($Ticket, $Randstr, $UserIP); if ($resp->isSuccess()) { // verified! // if Domain Name Validation turned off don't forget to check hostname field // if($resp->getStatus() === 1) { } } else { $errors = $resp->getErrMsg(); }
您可以在 examples/index.html examples/login.php 中查看一个端到端的示例
thinkphp5 示例
conposer require tekintian/tekintcaptcha
//腾讯验证码配置 for config.php / app.php 'tenncent_cpatcha' => [ 'aid' => '123456', 'app_secret_key' => 'aaaaadfasdfdsfsdf**', ] //for login.php public function login() { // 指定模板输出 return $this->fetch('login'); } public function doLogin(){ $post = input('param.'); // 获取全部参数 if (isset($post['Ticket']) && $post['Ticket'] !='' ) { /*从tp5的配置文件中读取aid, AppSecretKey */ $aid=config('app.tenncent_cpatcha.aid'); $AppSecretKey=config('app.tenncent_cpatcha.app_secret_key'); /*实例化 TekinTCaptcha */ $captcha = new \TekinTCaptcha\TekinTCaptcha($aid,$AppSecretKey); /*验证票据*/ $resp = $captcha->verify($post['Ticket'], $post['Randstr']); if ($resp->isSuccess()){ //验证成功 pp($post); //验证成功end }else{ foreach ($resp->getErrMsg() as $msg) { echo '<kbd>' , $msg , '</kbd> '; } echo '<kbd>返回状态码:'. $resp->getStatus() .'</kbd> '; echo '<kbd>恶意等级:'. $resp->getEvilLevel() .'</kbd> '; } } }