insign/laravel-decaptcha

一个用于识别流行的验证码服务(如 rucaptcha.com、2captcha.com、pixodrom.com、captcha24.com、socialink.ru、anti-captcha.com)的 Laravel 扩展包

1.0.3 2016-10-04 05:06 UTC

This package is auto-updated.

Last update: 2024-09-07 05:22:29 UTC


README

一个用于识别流行的验证码服务(如 rucaptcha.com、2captcha.com、pixodrom.com、captcha24.com、socialink.ru、anti-captcha.com)的 Laravel 扩展包

功能

  • 适用于所有基于常见标准的验证码服务识别
  • 易于设置
  • 通过文件路径或引用接受

安装

通过 [composer](https://getcomposer.org.cn/download/) 安装此扩展是首选方式。首先将包添加到 composer.json 中的 require 部分。

在终端运行

composer require insign/laravel-decaptcha:~1

配置

加载依赖并安装到您的项目后,我们将添加 ServiceProvider 和 facade。

ServiceProvider

您需要更新应用程序配置以注册此包,以便它可以由框架加载。

####Laravel 只需在 config/app.php 文件的 'providers' 部分的末尾添加以下代码

'providers' => [
    // your others classes here...
    
    insign\LaravelDecaptcha\LaravelDecaptchaServiceProvider::class,
    
],

Lumen

转到 /bootstrap/app.php 文件并添加此行

	$app->register(insign\LaravelDecaptcha\LaravelDecaptchaServiceProvider::class);

Facade

在 facade 中添加一个新条目

'aliases' => array(
    // your others classes here...

	'Decaptcha' => insign\LaravelDecaptcha\LaravelDecaptchaFacade::class,
),

设置

要将 Decaptcha 设置文件移动到应用程序的 Settings 文件夹,只需执行以下命令

php artisan vendor:publish --provider="insign\LaravelDecaptcha\LaravelDecaptchaServiceProvider"

在您的 .env 文件中,添加以下值

DECAPTCHA_KEY=yourkeyfortheservice
DECAPTCHA_DOMAIN=thedomainservice.com

或者简单地编辑 config/decaptcha.php 文件

使用

一个简单的示例

$path = 'path/insideto/captcha.png';
if (Decaptcha::run($path)) {
    $solved = Decaptcha::result();
} else {
    throw new \Exception(Decaptcha::error());
}

如果您只有验证码的引用,则可以应用此方法,但为了使用此方法,您应在配置中将路径设置为保存验证码的位置(DECAPTCHA_TMP 变量)

   $path = 'https://vk.com/captcha.php?sid=698254154192&s=1';
   if (Decaptcha::run($path)) {
       $solved = Decaptcha::result();
   } else {
       throw new \Exception(Decaptcha::error());
   }