微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Laravel 8 CAPTCHA 问题,图像不显示

如何解决Laravel 8 CAPTCHA 问题,图像不显示

我遇到了验证码问题。我遵循 this 指南但没有解决我的问题,我也看到了其他 SO 问题,但没有一个接近我的问题。在展示我的代码之前,这些是我尝试过的解决方案:

  • 更换浏览器
  • 安装不同类型的提供程序
  • 看一些 captcha.PHP 配置的例子,但都是一样的
  • 遵循其他指南 here,但我发现它很难理解

在 chrome 上检查这个错误出现 = register:236 GET http://myapp/captcha/default?GNprItJm 404 (Not Found)

Blade.PHP

 <form method="POST" action="{{ route('register') }}">
                    @csrf

                    <!-- ###### NAME ######  -->
                        <div class="form-group row">
                            <label for="name" class="col-md-4 col-form-label text-md-right">{{ __('Name') }}</label>

                            <div class="col-md-6">
                                <input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="name" autofocus>

                                @error('name')
                                <span class="invalid-Feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                                @enderror
                            </div>
                        </div>

                      

                        <!-- ###### EMAIL ######  -->
                        <div class="form-group row">
                            <label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>

                            <div class="col-md-6">
                                <input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">

                                @error('email')
                                <span class="invalid-Feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                                @enderror
                            </div>
                        </div>

                        <!-- ###### PASSWORD ######  -->

                        <div class="form-group row">
                            <label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>

                            <div class="col-md-6">
                                <input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">

                                @error('password')
                                <span class="invalid-Feedback" role="alert">
                                    <strong>{{ $message }}</strong>
                                </span>
                                @enderror
                            </div>
                        </div>

                        <!-- ###### CONFIRM PASSWORD ######  -->

                        <div class="form-group row">
                            <label for="password-confirm" class="col-md-4 col-form-label text-md-right">{{ __('Confirm Password') }}</label>

                            <div class="col-md-6">
                                <input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
                            </div>
                        </div>

                        <div class="form-group row mt-4 mb-4">
                            <div class="captcha">
                                <span>{!! captcha_img() !!}</span>
                                <button type="button" class="btn btn-danger">
                                    &#x21bb;
                                </button>
                            </div>
                        </div>

                        <div class="form-group mb-4">
                            <input id="captcha" type="text" class="form-control" placeholder="Enter Captcha" name="captcha">
                        </div>



                        @if ($errors->any())
                            <div class="alert alert-danger">
                                <ul>
                                    @foreach ($errors->all() as $error)
                                        <li>{{ $error }}</li>
                                    @endforeach
                                </ul>
                            </div><br />
                        @endif

                        <div class="form-group row mb-0">
                            <div class="col-md-6 offset-md-4">
                                <button type="submit" class="btn btn-primary">
                                    {{ __('Register') }}
                                </button>
                            </div>
                        </div>
                    </form>

控制器

<?PHP

protected function validator(array $data)
{
    return Validator::make($data,[
        'name' => ['required','string','max:100'],'email' => ['required','email','max:255','unique:users'],'password' => ['required','min:4','confirmed'],'captcha' => 'captcha'
    ]);
}

protected function create(array $data)
{
    return User::create([
        'name' => $data['name'],'email' => $data['email'],'password' => Hash::make($data['password']),]);
}

public function reloadCaptcha(): \Illuminate\Http\JsonResponse
{
    return response()->json(['captcha' => captcha_img()]);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。