zoukankan      html  css  js  c++  java
  • 使用Geetest Laravel 5 集成开发包 一直提示 ‘正在加载验证码’,console提示'/auth/geetest not found' 错误解决方法。

     

    安装

    在项目地址输入命令

    $ composer require germey/geetest

    就可以完成该包的安装

    配置

    注册 ServiceProvider,在 config/app.php 的 providers 中添加

    GermeyGeetestGeetestServiceProvider::class,

    在 aliases 中添加

    'Geetest' => GermeyGeetestGeetest::class,

    然后执行

    $ php artisan vendor:publish

    会生成一个配置文件,config/geetest.php 和视图文件views/vendor/geetest

    视图文件中你可以自定义配置,比如修改一下验证失败后的alert函数,修改为你想要的提示toast等。

    使用

    首先把刚才拿到的 ID 和 KEY 配置到 .env 文件中,因为这两个算私密内容,配置到 .env 文件中可以保证安全性。在 .env 中写入如下两行。

    GEETEST_ID=0f1097bef7xxxxxx9afdeced970c63e4
    GEETEST_KEY=c070f0628xxxxxxe68e138b55c56fb3b

    其中 ID 和 KEY 换成你自己的。

    然后,在任意的视图里,我们只需要调用

    {!! Geetest::render() !!}

    就可以得到验证码了。

              -以上文档出自  http://laravelacademy.org/post/5291.html

      问题出现。。。

    页面只显示'正在加载验证码',

    控制台显示‘'The requested URL /auth/geetest was not found on this server.',

    后来发现,是版本更新了,文档没更新。

    于是

    把config/geetest.php中的

    'geetest_url' => '/auth/geetest',

    改为

    'geetest_url' => 'auth/geetest',

    创建提示Not Found的那条路由

    Route::get('auth/geetest', 'GetGeetestController@getGeetest');

    创建控制器

    php artisan make:controller GetGeetestController

    在新建控制器中use GeetestCaptcha即可正常使用验证码

    <?php
    
    namespace AppHttpControllers;
    
    use GermeyGeetestGeetestCaptcha;
    use IlluminateHttpRequest;
    
    class GetGeetestController extends Controller
    {
        //
        use GeetestCaptcha;
    }

    问题解决!

    总结:   使用默认路由  制造控制器  use  trait 调用自带方法

    路径是  vendor/germey/src/GeetestCaptcha.php

  • 相关阅读:
    转:史上最最佳软件开发实践指导
    django--rtbac权限管理
    爬虫之selenium模块
    爬虫之request模块
    爬虫基础概念
    django--cookie与session
    python--深浅copy
    基于JaCoCo的Android测试覆盖率统计(二)
    jacoco统计Android手工测试覆盖率并自动上报服务器
    macOS10.12部署sonarqube5.6.3
  • 原文地址:https://www.cnblogs.com/jialongfei/p/6650460.html
Copyright © 2011-2022 走看看