>백엔드 개발 >PHP 튜토리얼 >laravel5.4 인증코드 구현코드 생성에 대하여

laravel5.4 인증코드 구현코드 생성에 대하여

小云云
小云云원래의
2018-01-30 11:16:111601검색

이 글에서는 주로 laravel5.4에서 인증 코드를 생성하는 방법에 대한 예를 제공합니다. 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리고자 합니다. 편집자를 따라가서 모두에게 도움이 되기를 바랍니다.

요약: 이 글에서는 gregwar/captcha를 사용하여 인증 코드를 구현하는 구체적인 단계와 가능한 문제 및 해결 방법을 소개합니다.

작업 단계:

1. laravel5.4 프로젝트 루트 디렉터리에서 작곡가.json 파일을 찾습니다.

add

"gregwar/captcha": "1.*"을 작곡가.json 파일에 추가합니다. 아래 그림과 같이.

2. 그런 다음 명령줄을 열고 프로젝트의 루트 디렉터리를 찾아 작곡가 업데이트를 실행합니다.

확장 라이브러리가 다운로드된 것을 볼 수 있습니다.

3. 검증 정상적으로 코딩된 후, 먼저 검증 코드가 정상적으로 표시되는지 테스트합니다.

먼저 경로를 정의합니다:

그런 다음 제어 계층에 새 codeController.php를 생성하고,

<?php 
namespace App\Http\Controllers;

use App\Http\Requests;
use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

//引用对应的命名空间
use Gregwar\Captcha\CaptchaBuilder;
use Session;
class CodeController extends Controller{
 public function captcha($temp)
 {
  $builder = new CaptchaBuilder();
  $builder->build(150,32);
  $phrase = $builder->getPhrase();
  //把内容存入session
  Session::flash('milkcaptcha', $phrase); //存储验证码
  ob_clean();
  return response($builder->output())->header('Content-type','image/jpeg');
 }

}

그런 다음 이전에 정의한 경로에 액세스합니다. 브라우저에서 인증코드를 보실 수 있습니다

그 외에도 작곡가.json에

이렇게 작성하시거나, 프로젝트 루트 디렉터리에서 Composer Update를 실행하신 후, Composer dump-autoload 명령어를 실행하셔도 됩니다. .

동일한 효과를 얻을 수 있습니다.

마지막으로 제가 겪은 문제에 대해 말씀드리겠습니다. 인터넷에서 라라벨 인증코드 생성 이미지는 이렇게 많이 써져 있습니다.

public function code($tmp)
{
//生成验证码图片的Builder对象,配置相应属性
$builder = new CaptchaBuilder;
//可以设置图片宽高及字体
$builder->build($width = 100, $height = 40, $font = null);
//获取验证码的内容
$phrase = $builder->getPhrase();
//把内容存入session
Session::flash('milkcaptcha', $phrase);
//生成图片
header("Cache-Control: no-cache, must-revalidate");
header('Content-Type: image/jpeg');
$builder->output();
}

해봤는데, 인증코드 이미지에는 그림과 같이 문자가 깨져 있고 이미지가 없습니다. 아래:

나중에 변경했는데

public function captcha($temp)
 {
  $builder = new CaptchaBuilder();
  $builder->build(150,32);
  $phrase = $builder->getPhrase();
  //把内容存入session
  Session::flash('milkcaptcha', $phrase); //存储验证码
  ob_clean();
  return response($builder->output())->header('Content-type','image/jpeg');
 }

정상적으로 표시됩니다.

관련 권장 사항:

163개의 메일박스를 사용하여 이메일을 보내는 laravel5.4에 대한 자세한 설명

Laravel5.4의 다중 필드 로그인 구현 방법에 대한 자세한 설명

Laravel5.4 프레임워크에서는 너무 긴 특수 필드 문제로 인해 마이그레이션 오류가 보고됩니다.

위 내용은 laravel5.4 인증코드 구현코드 생성에 대하여의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.