[ Laravel 5.5 文档 ] 处理用户请求 —— HTTP 请求的处理层:控制器

简介 我们之前的演示示例都是将所有的请求处理逻辑放在路由文件的闭包函数中,这显然是不合理的,我们需要使用控制器类组织管理相对复杂的业务逻辑处理。控制器用于将相关的 HTTP 请求封装到一个类中进行处理,这些控制器类存放在 app/Http/Controllers 目录下。 控制器入门 定义控制器 下面是一个基本控制器类的例子。 首先我们使用 Artisan 命令快速创建一个控制器: ph…

[ Laravel 5.5 文档 ] 处理用户请求 —— 使用中间件 VerifyCsrfToken 避免 CSRF 攻击

 简介&功能演示 跨站请求伪造(CSRF)是一种通过伪装授权用户的请求来攻击授信网站的恶意漏洞。 Laravel 通过自带的 CSRF 保护中间件让避免应用遭到跨站请求伪造攻击变得简单:Laravel 会自动为每一个被应用管理的有效用户会话生成一个 CSRF “令牌”,然后将该令牌存放在 Session 中,该令牌用于验证授权用户和发起请求者是否是同一个人。 任何时候在 Lar…

[ Laravel 5.5 文档 ] 处理用户请求 —— HTTP 请求的过滤器:中间件

简介 中间件为过滤进入应用的 HTTP 请求提供了一套便利的机制。例如,Laravel 内置了一个中间件来验证用户是否经过认证(如登录),如果用户没有经过认证,中间件会将用户重定向到登录页面,而如果用户已经经过认证,中间件就会允许请求继续往前进入下一步操作。 当然,除了认证之外,中间件还可以被用来处理很多其它任务。比如:CORS 中间件可以用于为离开站点的响应添加合适的头(跨域);日志中…

[ Laravel 5.5 文档 ] 处理用户请求 —— Laravel 应用的入口:路由系列之路由模型绑定篇

路由模型绑定 注入模型 ID 到路由或控制器动作时,通常需要查询数据库才能获取相应的模型数据。Laravel 路由模型绑定让注入模型实例到路由变得简单,例如,你可以将匹配给定 ID 的整个 User 类实例注入到路由中,而不只是注入用户 ID。 隐式绑定 Laravel 会自动解析定义在路由或控制器动作(变量名匹配路由片段)中的 Eloquent 模型类型声明,例如(我们将这个路由定义在…

[ Laravel 5.5 文档 ] 处理用户请求 —— Laravel 应用的入口:路由系列之参数、命名和分组篇

路由参数 必选参数 有时我们需要在路由中获取 URI 请求参数。例如,如果要从 URL 中获取用户ID,需要通过如下方式定义路由参数: Route::get(‘user/{id}’, function ($id) { return ‘User ‘ . $id; }); 这样我们在浏览器中访问 http://blog.dev/user/1,就会得到以下输出: User 1 可以根据需要在路…

[ Laravel 5.5 文档 ] 快速入门 —— 使用 Laragon 在 Windows 中搭建 Laravel 开发环境

简介 之前学院君陆续写了三篇介绍 Laravel 开发环境的教程:Homestead、Valet 和 LaraDock,我都是在 Mac 系统中安装使用的,相当流畅,没有任何梗,但是对于那些使用 Windows 的同学来说,Valet 就不说了,Homestead 和 LaraDock 虽说支持 Windows 系统,但是对小白来说,还是有一定复杂度的,难免有些磕磕跘跘,遇到这样那样的奇…

[ Laravel 5.5 文档 ] 处理用户请求 —— Laravel 应用的入口:路由系列之基础入门篇

基本路由 最基本的 Laravel 路由只接收一个 URI 和一个闭包,并以此为基础提供一个非常简单优雅的路由定义方法: Route::get(‘hello’, function () { return ‘Hello, Welcome to LaravelAcademy.org’; }); 我们以在安装配置文档中新建的 blog 应用为例,在 routes/web.php 中定义该路由:…

[ Laravel 5.5 文档 ] 快速入门 —— 使用 Laradock 搭建基于 Docker 的 PHP 开发环境

 简介 Laradock 是为 Docker 提供的完整 PHP 本地开发环境,和 Homestead 一样提供了一系列打包好(包括配置)的 Docker Image。Laradock 早期专注为 Laravel 打造 Docker 开发环境,因而最早在 Laravel 社区中出名,后来随着影响力的扩大,逐渐被 PHP 社区接纳和采用,目前支持的 PHP 项目除了 Laravel 之外…

[ Laravel 5.5 文档 ] 快速入门 —— 轻量级开发环境:Valet 安装使用详细教程

 简介 Valet 是为 Mac 打造的极简开发环境,没有Vagrant,没有虚拟机,也无需配置 /etc/hosts 文件,还可以使用本地隧道公开分享你的站点。 启动 Mac 后,Laravel Valet 会在后台静默运行 Nginx,然后通过 DnsMasq,Valet 会代理所有针对 *.dev 域名的请求指向本地安装的站点目录。 此外,这样一个极速的 Laravel 开发环境…

[ Laravel 5.5 文档 ] 快速入门 —— 重量级开发环境:Homestead 安装使用详细教程

 简介 Laravel 为开发者提供了一套完善的重量级本地开发环境 —— Laravel Homestead。 Laravel Homestead 实际是一个打包好各种 Laravel 开发所需软件和工具的 Vagrant 盒子(关于 Vagrant 盒子的释义请参考 Vagrant 官方文档),该盒子为我们提供了一个优秀的开发环境,有了它,我们不再需要在本地环境安装 PHP、Comp…