简介

许多 web 应用要求用户在使用之前进行 Email 地址验证。Laravel 不强迫你在每个应用中重新实现它,Laravel提供了方便的方法来发送和验证电子邮件验证请求。

Model 预备

开始之前, 验证你的 App\User 模型是否实现了 Illuminate\Contracts\Auth\MustVerifyEmail 契约。 此外,你应该使用 Illuminate\Auth\MustVerifyEmail trait:

namespace App;

use Illuminate\Auth\MustVerifyEmail;

use Illuminate\Notifications\Notifiable;

use Illuminate\Foundation\Auth\User as Authenticatable;

use Illuminate\Contracts\Auth\MustVerifyEmail as MustVerifyEmailContract;

class User extends Authenticatable implements MustVerifyEmailContract

{

use MustVerifyEmail, Notifiable;

// ...

}

数据库注意事项

Email 验证字段

接下来, 你的 user 需要包含一个 email_verified_at 字段用来存储 Email 地址通过验证的时间。默认的,Laravel框架中 users 表的数据迁移内已经包含了这个字段。所以,您需要做的就是执行数据库迁移:

php artisan migrate

路由

Laravel 的 Auth\VerificationController 类包含了发送验证链接和验证 Email 的所需逻辑。 要为这个控制器注册所需的路由 , 传递 verify 项给 Auth::routes 方法即可 :

Auth::routes(['verify' => true]);

保护路由

路由中间件 可用于仅允许经过验证的用户访问给定路由。Laravel 附带了 verified 中间件,它定义在 Illuminate\Auth\Middleware\EnsureEmailIsVerified。由于此中间件已在应用程序的HTTP内核中注册,因此您需要做的就是将中间件附加到路由定义:

Route::get('profile', function () {

// 只有验证过的用户可以进入

})->middleware('verified');

视图

当执行 make:auth 命令时,Laravel将生成邮箱验证需要的所有视图。 视图位于 resources/views/auth/verify.blade.php。您可以根据应用需要自定义此视图。

邮箱验证之后

在 Email 地址通过验证之后,用户将被重定向到 /home。你可以通过在 VerificationController 中定义 redirectTo 方法或属性来自定义重定向地址:

protected $redirectTo = '/dashboard';

php邮箱验证laravel接口,Email认证 | Laravel 中文文档 - 码农教程相关推荐

  1. jQuery EasyUI API 中文文档 - ValidateBox验证框

    jQuery EasyUI API 中文文档 - ValidateBox验证框,使用jQuery EasyUI的朋友可以参考下. 用 $.fn.validatebox.defaults 重写了 def ...

  2. springboot 中文文档_比Swagger还好用的自动生成接口文档工具

    JApiDocs是一个无需额外注解.开箱即用的SpringBoot接口文档生成工具. 编写和维护API文档这个事情,对于后端程序员来说,是一件恼人但又不得不做的事情,我们都不喜欢写文档,但除非项目前后 ...

  3. springboot 中文文档_还在用 Swagger生成接口文档?我推荐你试试它

    JApiDocs是一个无需额外注解.开箱即用的SpringBoot接口文档生成工具. 编写和维护API文档这个事情,对于后端程序员来说,是一件恼人但又不得不做的事情,我们都不喜欢写文档,但除非项目前后 ...

  4. oracle中文文档_如果你还在用Swagger(丝袜哥)生成接口文档,那就真有点老“土”了!...

    JApiDocs是一个无需额外注解.开箱即用的SpringBoot接口文档生成工具. 编写和维护API文档这个事情,对于后端程序员来说,是一件恼人但又不得不做的事情,我们都不喜欢写文档,但除非项目前后 ...

  5. laravel 5.1 php版本号,发行版本说明 | 序言 | Laravel 5.1 中文文档

    发行版本说明 由 学院君 创建于5年前, 最后更新于 11个月前 版本号 #2 19641 views 23 likes 0 collects 支持政策 LTS版本,比如Laravel 5.1,将会提 ...

  6. endwith php,辅助函数 | 进阶系列 | Laravel 7 中文文档

    辅助函数 由 学院君 创建于11个月前, 最后更新于 11个月前 版本号 #7 3845 views 0 likes 1 collects 简介 Laravel 自带了一系列 PHP 辅助函数,很多被 ...

  7. php 6.0新特性,新版特性 | 序言 | Laravel 6 中文文档

    新版特性 由 学院君 创建于1年前, 最后更新于 1年前 版本号 #2 17909 views 7 likes 2 collects Laravel 6.0(LTS 版本) 在 Laravel 5.8 ...

  8. ASP.NET Core 中文文档 第四章 MVC(2.2)模型验证

    原文:Model Validation 作者:Rachel Appel 翻译:娄宇(Lyrics) 校对:孟帅洋(书缘) 在这篇文章中: 章节: 介绍模型验证 验证 Attribute 模型状态 处理 ...

  9. orm2 中文文档 3.2 模型验证器

    译者:飞龙 来源:Model Validations Enforce模块用于验证数据.对于使用以前的验证器的用户,还可以继续使用,它们中的一部分整合到了enforce,剩余部分还没有.推荐你开始使用o ...

最新文章

  1. 英伟达TensorRT 8-bit Inference推理
  2. vivado调用modelsim
  3. vs2005格式化代码
  4. 计算机组成原理 — 冯诺依曼体系结构
  5. windows下单机版的伪分布式solrCloud环境搭建Tomcat+solr+zookeeper
  6. 人工智能与大数据的完美结合
  7. 嵌入式面试知识点总结 -- ARM篇
  8. 机动车驾驶(2)--- 老司机经验
  9. MAC电脑:安装mysql报ERROR 1045 (28000)Access denied
  10. CodeForces - 1323B Count Subrectangles(思维)
  11. CRM WebUI designer layer的读操作
  12. P3701 -「伪模板」主席树【网络流,最大流】
  13. JPBC参数介绍Element,Field,Point等
  14. meta标签以及一些基本标签
  15. 解决在IE6下使用display: inline-block;的不兼容性问题
  16. 基于点云的视觉引导系统
  17. HTTP1.0/1.1/2.0特性对比_转
  18. 自编Python机器人,内置词库可改写。
  19. CMMI认证过程中实施步骤详解
  20. 决策树CART 代价复杂度剪枝

热门文章

  1. easyui中combobox 验证输入的值必须为选项框中的数据
  2. Spring JdbcTemplate+JdbcDaoSupport实例
  3. C#开发的高性能EXCEL导入、导出工具DataPie(支持MSSQL、ORACLE、ACCESS,附源码下载地址)...
  4. 一个列用render渲染的时候,如果列宽度不够,内容多出的部分会被隐藏,无法显示。这时需要一个鼠标滑过提示全部内容的tip功能。...
  5. spyder编辑器报ModuleNotFoundError: No module named ‘pymongo‘,明明已经安装上了pymongo扩展
  6. PHP is_null,empty以及isset,unset的区别
  7. 对一千万条数据进行排序---编程珠玑第二版 第一章
  8. php扩展memcached和memcache的安装配置方法
  9. Git用户名邮箱配置
  10. 数据流图软件_软件工程导论知识点梳理之概念题