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

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

[ 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 文档 ] 处理用户请求 —— Laravel 应用的入口:路由系列之基础入门篇

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

RabbitMQ 从入门到放弃系列笔记(六):消息路由

如果我们只想让 error 级别的 log 保存到磁盘,该怎么做? emit_logs_direct.php <?php /** * 发送消息 */ $exchangeName = ‘direct_logs’; $level = empty($argv[1]) ? ‘info’ : $argv[1]; // 错误级别:info、warn、error $message = empty…

[ Laravel 5.4 文档 ] 官方包 —— API认证(Passport)

1、简介 Laravel 通过传统的登录表单已经让用户认证变得很简单,但是 API 怎么办?API 通常使用token 进行认证并且在请求之间不维护 session 状态。Laravel 使用 Laravel Passport 让 API 认证变得轻而易举,Passport 基于 Alex Bilbie 维护的 League OAuth2 server,可以在数分钟内为 Laravel …

[ Laravel 5.4 文档 ] 安全 —— 用户认证

1、简介 注:想要更快上手?只需要在新安装的 Laravel 应用下运行 php artisan make:auth 和 php artisan migrate,然后在浏览器中访问 http://your-app.dev/register,这两个命令会生成用户登录注册所需要的所有东西。 Laravel 中实现用户认证非常简单。实际上,几乎所有东西都已经为你配置好了。配置文件位于 conf…

[ Laravel 5.4 文档 ] HTTP层 —— 请求

1、访问请求实例 要通过依赖注入获取当前 HTTP 请求实例,需要在控制器的构造函数或方法中对 Illuminate\Http\Request 类进行类型提示,这样当前请求实例会被服务容器自动注入: <?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController exte…

[ Laravel 5.4 文档 ] HTTP层 —— 控制器

1、简介 将所有的请求处理逻辑都放在单个路由文件中显然是不合理的,你也许还希望使用控制器类组织管理这些行为。控制器可以将相关的 HTTP 请求封装到一个类中进行处理。通常控制器存放在 app/Http/Controllers 目录中。 2、基本控制器 定义控制器 下面是一个基本控制器类的例子。所有的 Laravel 控制器应该继承自 Laravel 自带的控制器基类 Controller…