[ Lumen 5.2 文档 ] 更多特性 —— 用户授权

1、简介 除了提供开箱即用的认证服务之外,Lumen还为资源的授权逻辑和访问控制提供了便捷的方法。你可以通过多种方法和辅助函数组织管理授权逻辑。 通常,Lumen中授权的使用和Laravel中一样,这里我们只讨论不同的地方,更多使用细节请参考完整的Laravel文档。 2、与Laravel的不同之处 定义权限(Abilities) 相对于Laravel,Lumen使用授权主...

[ Lumen 5.2 文档 ] 更多特性 —— 用户认证

1、简介 Lumen中的认证和Laravel使用同样的底层库,但和完整的Laravel框架相比配置完全不一样。由于Lumen不再支持Session状态,如果你想要认证输入的请求,只能通过API token的方式实现。 2、起步 认证服务提供者 注:在使用Lumen的认证特性之前,需要取消bootstrap/app.php文件中注册服务提供者AuthServiceProvider前...

[ Lumen 5.2 文档 ] 基础 —— HTTP 响应

1、基本响应 所有路由和控制器都会返回某种被发送到用户浏览器的响应,Lumen提供了多种不同的方式来返回响应,最基本的响应就是从路由或控制器返回一个简单的字符串: $app->get('/', function () { return 'Hello World'; }); 给定的字符串会被框架自动转化为HTTP响应。 响应对象 但是大多数路由和控制器动作都会返...

[ Lumen 5.2 文档 ] 基础 —— HTTP 请求

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

[ Lumen 5.2 文档 ] 基础 —— HTTP 控制器

1、简介 将所有的请求处理逻辑都放在单个routes.php中肯定是不合理的,你也许还希望使用控制器类组织管理这些行为。控制器可以将相关的HTTP请求封装到一个类中进行处理。通常控制器存放在app/Http/Controllers目录中。 2、基本控制器 下面是一个基本控制器类的例子。所有的Lumen控制器应该继承自Lumen安装默认的基本控制器: <?php nam...

[ Lumen 5.2 文档 ] 基础 —— HTTP 中间件

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

[ Lumen 5.2 文档 ] 基础 —— HTTP 路由

1、基本路由  所有路由都定义在app/Http/routes.php中。最基本的 Lumen 路由接收一个 URI 和一个闭包: $app->get('foo', function () {     return 'Hello World'; }); $app->post('foo', function () {     // }); 有效的路由方法 ...

[ Lumen 5.2 文档 ] 起步 —— 配置

1、简介 Lumen框架的所有配置项都放在配置文件.env  中。 2、访问配置值 你可以使用全局的辅助函数config来访问配置值,配置值可以通过”.”来分隔配置文件和配置项,如果配置项不存在的话则会返回默认值: $value = config('app.timezone'); 如果要在运行时设置配置值,传递一个数组到config函数: config(['app.timez...

[ Lumen 5.2 文档 ] 起步 —— 安装

1、服务器要求 Lumen框架对服务器有少许要求,当然,Laravel Homestead虚拟机已经满足所有这些要求,所以强烈推荐使用Homestead作为本地开发环境。 如果你没有使用Homestead,那么需要确保服务器满足以下要求: PHP >= 5.5.9 OpenSSL PHP Extension Mbstring PHP Extension ...

[ Lumen 5.2 文档 ] 序言 —— 升级指南

Lumen 5.2 只专注与提供无状态API,因此,session已经从框架中移除,如果你想要使用session,需要切换到 Laravel 5.2。 从 Lumen 5.2 升级到 Laravel 5.2 很简单,只需要将路由和应用中自己编写的类拷贝到 Laravel 中即可,由于 Laravel 和 Lumen 共用很多底层组件,即使是自己编写的类也无需做大的改动。 1、升级...