[ Laravel 从入门到精通 ] 用户认证与授权系列 —— 通过内置脚手架快速实现用户认证

今天开始我们将开启用户认证与授权系列,主要规划了以下内容: 通过内置命令快速实现登录认证功能 用户登录注册流程及多字段登录实现 基于多表的用户认证功能实现 基于 API 的用户认证功能实现 用户认证相关事件触发及监听 邮箱验证及找回密码功能实现 不同系统用户单点登录实现 基于 ACL 的用户权限管理实现 基于 RBAC 的用户权限管理实现 希望通过这个系列的学习,可以帮助你彻底掌握 ...

基于 Laravel 5.7 开发博客应用系列(二) —— 十分钟完成博客系统搭建

本篇开始我们将正式开始博客项目的代码编写,借助于 Laravel 的强大功能,我们可以在十分钟内快速搭建起一个博客应用,当然这其中不包括任何博客核心功能之外的东西,也不包括后台管理系统(这些我们在后续章节中会一一加进来)。 1、创建文章数据表及其模型(0:00~2:30) 我们已经在上一篇中为博客项目完成了大部分准备工作,现在首先要做的就是为这个项目创建一个新的文章表 posts 及该表...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(三十八) —— 通过 Vue Router 提供的路由元信息功能实现前端路由权限判断

在这篇教程中,我们来构建 Roast 应用管理后台前端 UI,首先,我们为管理后台初始化创建以下子目录: /resources/assets/js/api/admin /resources/assets/js/components/admin /resources/assets/js/modules/admin /resources/assets/js/pages/admin 第一步...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(二十八) —— 通过 Vuex + Vue Router 导航守卫在前端实现认证路由保护

我们已经在上一篇教程中实现了通过 Vue 组件实现用户登录,但是现在有个问题,就是用户在没有登录的情况下也可以访问需要认证的页面,比如新增咖啡店页面: 虽然在提交表单数据到后台 API 时不会成功,但是这会给用户造成困扰,所以,我们需要对这种需要认证页面的访问请求进行拦截,我们以前在开发非单页面应用时,会在访问这种页面时从后端进行判断,比如经过 auth 中间件进行过滤,如果需要认证则...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(二十六) —— 根据是否需要登录重新组织后端路由

到目前为止,我们的 Roast 应用必须登录后才能使用,这在开发环境没啥问题,但是如果作为实际产品发布则很影响用户体验,所以我们有必要对应用不同功能的访问权限重新进行组织。 第一步:重新组织 API 路由 首先从路由着手,对应用而言,一般首页、列表页、详情页都应该是可以公开访问的,只有新增、编辑、喜欢、取消喜欢等与用户相关的功能需要登录后才能访问。我们姑且将不需要登录即可访问的路由称之为...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(二十) —— 通过 Laravel + Vue 实现喜欢/取消喜欢咖啡店功能

对很多应用而言,尤其是社交媒体类应用,都有喜欢或收藏功能,在这篇教程中,我们就来演示如何基于 Laravel 和 Vue 从前端到后端完整实现喜欢/取消喜欢咖啡店功能。 在上一篇教程中我们构建了咖啡店之间的父子关联关系,并且在更早的教程中构建了咖啡店与冲泡方法之间的多对多关联,而在这篇教程中,我们将构建基于用户和咖啡店的另一个多对多关联关系:一个咖啡店可以被多个用户喜欢,一个用户也可以喜...

[ Laravel 从入门到精通 ] 视图入门:Laravel 支持的视图格式以及在路由中的基本使用

Laravel 视图概述 我们在之前几篇教程中定义的路由大多数返回的都是纯字符串文本或者字符串拼接的 HTML,这主要是为了测试方便,在实际开发中,除了 API 路由返回指定格式数据对象外,大部分 Web 路由返回的都是视图,以便实现更加复杂的页面交互,我们在前面已经看到过了视图的定义方式: return view('以.分隔的视图模板路径'); 我们将在这篇教程中具体讨论视图实现技术。...

基于 Laravel + Vue 构建 API 驱动的前后端分离应用系列(十三) —— 通过 Vue 组件、Vue Router、Vuex 和 Laravel 实现表单提交

在这篇教程中,我们来为咖啡店添加一些数据。我们构建这个应用的目的是为了帮助咖啡爱好者找到下一杯咖啡,所以首先需要让认证用户可以提交咖啡店到应用,不论何时在单页面应用中处理表单,都需要让 Laravel API 和调用 JavaScript 路由并更新 Vuex 储存数据的 Vuex 模块协同工作。听起来需要做的事情很多,但如果我们将它们拆解开来各个击破,也没有那么复杂。 第一步:回顾我们...

[ Laravel 从入门到精通 ] 表单方法伪造与跨站请求伪造(CSRF)攻击防护

表单方法伪造 有时候,我们可能需要手动定义发送表单数据所使用的 HTTP 请求方式,而 HTML 表单仅支持 GET 和 POST 两种方式,如果要使用其他的方式,则需要自己来定义实现。 HTTP 请求方式概述 最常见的 HTTP 请求方式自然是 GET 和 POST,相信你已经很熟悉,除此之外,HTTP 协议还定义了很多其他的请求方式,可以在 HTTP/1.1: Method De...

[ Laravel 从入门到精通 ] 路由进阶使用:模型绑定、兜底路由、频率限制和路由缓存

路由模型绑定 我们在使用路由的时候一个很常见的使用场景就是根据资源 ID 查询资源信息: Route::get('task/{id}', function ($id) { $task = \App\Models\Task::findOrFail($id); }); Laravel 提供了一个「路由模型绑定」功能来简化上述代码编写,通过路由模型绑定,我们只需要定义一个特殊约定的参数...