如何解决Laravel 8 CAPTCHA 问题,图像不显示
我遇到了验证码问题。我遵循 this 指南但没有解决我的问题,我也看到了其他 SO 问题,但没有一个接近我的问题。在展示我的代码之前,这些是我尝试过的解决方案:
在 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">
↻
</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 举报,一经查实,本站将立刻删除。