教程/recaptcha3

此包的最新版本(1.0.2)没有可用的许可证信息。

laravel/inertia 的 Google recaptcha v3 集成

1.0.2 2024-01-21 13:09 UTC

This package is not auto-updated.

Last update: 2024-09-16 14:41:38 UTC


README

  1. 安装 composer 包
composer require tutorials/recaptcha3
  1. config/app.php 中定义服务提供者
'providers' => [
    ...
    Tutorials\Recaptcha3\RecaptchaServiceProvider::class
],
  1. .env 文件中定义变量,并将值从 recaptcha 管理面板 中获取
RECAPTCHA_ENABLED=
RECAPTCHA_SITE_KEY=
RECAPTCHA_SECRET_KEY=
  1. 在路由上放置 recaptcha 中间件
Route::post('/login', LoginController::class)->middleware('recaptcha');
Route::post('/register', LoginController::class)->middleware('recaptcha:0.6');
  1. 在布局中插入 @recaptcha blade 指令
<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Recaptcha</title>
        
        @recaptcha
    </head>
</html>
  1. 用 recaptcha 验证包裹你的表单提交逻辑
window.recaptcha('action_name_for_recaptcha_statistic').then((token) => {
    // form submition logic
    form.transform((data) => ({
        ...data,
        recaptcha_token: token, // recaptcha_token is required
    })).post(route('login'))
});
  1. 运行 php artisan view:clear 清除视图缓存