滑塊驗證圖片

Z_Laravel發表於2022-12-09

安裝

composer require kkokk/poster

更新

composer update kkokk/poster

演示

滑塊前端演示 kkokk.github.io/captcha/

使用文件

開源倉庫:
gitee 文件
github 文件

    use Kkokk\Poster\PosterManager;
    use Kkokk\Poster\Exception\PosterException;

    try {
        # 滑塊自定義引數
        $params = [
            'src'           => '',  // 背景圖片,尺寸 340 * 191
            'im_width'      => 340, // 畫布寬度
            'im_height'     => 251, // 畫布高度
            'bg_width'      => 340, // 背景寬度
            'bg_height'     => 191, // 背景高度
            'slider_width'  => 50,  // 滑塊寬度
            'slider_height' => 50,  // 滑塊高度
            'slider_border' => 2,   // 滑塊邊框
        ];

        $type = 'slider';

        /**
          * 獲取滑塊驗證引數
          * 內部使用了 laravel 的 cache 快取,返回的是圖片的 base64 、 快取key 、滑塊高度
          * @param string $type   驗證碼型別
          * @param array  $params 驗證碼自定義引數
          * @return arary
          */
        $data = PosterManager::Captcha()->type($type)->config($params)->get();

        /** 
          * 驗證滑塊
          * 前端根據相關滑塊操作進行處理, 返回x座標,返回 true 則驗證成功
          * @param string     $key     快取key
          * @param string|int $value   前端傳回來的x座標
          * @param int        $leeway  誤差值
          * @return boolean
          */
        $res = PosterManager::Captcha()->type($type)->check($key, $value, $leeway);

    } catch (PosterException $e) {
        print_r($e->getMessage())
    }

示例

滑塊

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章