基于 Swoole 构建高性能 Laravel 应用系列 —— 基于 Swoole 在 Laravel 中实现异步事件监听及处理

这一篇教程我们直接以 hhxsv5/laravel-s 扩展包为例,演示如何在 Laravel 项目中基于 Swoole 实现事件监听。 系统自带事件 首先我们来看一些扩展包自带的系统事件,这些系统事件又可以进一步划分为 Laravel 应用级别的系统事件以及 Swoole 底层 Worker 进程级别的系统事件。 注:在基于 Swoole HTTP 服务器的系统中,Worker 进程...

使用 Dingo API 扩展包快速构建 Laravel RESTful API(十一)—— 在应用内部请求 Dingo API

Dingo 扩展包花费了很大的精力来提供从应用内部请求 Dingo API 接口的功能,这意味着,通过 Dingo 扩展包实现的 API 接口不仅可以被客户端和第三方应用消费,还可以为应用内部的 Web 路由和其他 API 路由提供数据和服务支持,这样一来,我们就可以构建一个完全基于 API 驱动的应用,支持内部请求的 API 还有一个好处就是可以返回原生数据对象而不是 HTTP 响应对...

[ Laravel 从入门到精通 ] 请求与响应系列 —— Laravel 路由匹配和执行底层源码剖析

入口方法 通过上一篇教程,我们知道路由匹配和处理逻辑入口位于 vendor/laravel/framework/src/Illuminate/Routing/Router.php 的 dispatch 方法: public function dispatch(Request $request) { $this->currentRequest = $request; ret...

[ Laravel 从入门到精通 ] 请求与响应系列 —— Laravel 中间件底层源码剖析

前面学院君已经给大家介绍了 Laravel 一次请求生命周期底层运行逻辑,并分别就请求类和响应类的底层实现和基本使用给大家做了详细的演示,接下来,我们还是围绕请求生命周期中的组件展看,分两篇教程分别介绍中间件的底层原理和路由匹配的底层原理。首先我们来看中间件。 什么是中间件 中间件并不是 Laravel 框架所独有的概念,而是一种被广泛应用的架构模式,尤其是在 Java 中。 在 Lar...

[ Laravel 5.8 文档 ] 基础组件 —— HTTP 请求

访问请求实例 在控制器中获取当前 HTTP 请求实例,需要在构造函数或方法中对 Illuminate\Http\Request 类进行依赖注入,这样当前请求实例会被服务容器自动注入:...

[ Laravel 5.8 文档 ] 基础组件 —— CSRF 保护

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

[ Laravel 5.8 文档 ] 基础组件 —— 中间件

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

[ Laravel 5.8 文档 ] 底层原理 —— 一次 Laravel 请求的生命周期

简介 当我们使用现实世界中的任何工具时,如果理解了该工具的工作原理,那么用起来就会得心应手,应用开发也是如此。当你理解了开发工具如何工作,用起来就会更加游刃有余。 这篇文档的目标就是从更高层面向你阐述 Laravel 框架的工作原理。通过对框架更全面的了解,一切都不再那么神秘,你将会更加自信地构建应用。如果你不能马上理解所有这些条款,不要失去信心!先试着掌握一些基本的东西,你的知识水平将...

[ Laravel 从入门到精通 ] 请求与响应系列 —— Laravel 请求类 Request 剖析

我们已经知道,在 Laravel 框架中,需要通过 Request 对象来获取用户请求信息,该对象引用的完整类名是 Illuminate\Http\Request,而该请求类又继承自 Symfony 的 Symfony\Component\HttpFoundation\Request,所以在介绍 Laravel 的 Request 之前,需要先对 Symfony 底层的 Request ...