Laravel 6 将新增为指定队列任务设置中间件的功能


Posted in PHP onAugust 06, 2019

Taylor Otwell 在 Laravel 6 中新增了为指定队列任务设置中间件的能力,以便我们在执行某些队列任务之前先执行一些业务逻辑:

This [pull request] adds an easy way to have job specific middleware for queued jobs. Global job middleware were actually already possible by calling Bus::pipeThrough([]) in a service provider during the application boot process…These middleware provide a convenient location to wrap jobs in some logic before they are executed.

我们可以在 Job 类中定义 middleware() 方法来设置对应的中间件,该方法返回的是中间件对象实例数组,因此可以定义多个中间件:

public function middleware()
{
   return [new SomeMiddleware];
}

下面是中间件的示例代码,与之前的中间件定义并无大的区别,只是将 $request 参数替换成了 $command

class SomeMiddleware
{
  public function handle($command, $next)
  {
    // Do something...

    return $next($command);
  }
}

此外,还可以在分发任务时动态指定中间件,这些中间件会自动和定义在该任务类的 middleware() 方法返回的中间件合并:

SomeJob::dispatch()->through([new SomeMiddleware]);

该特性将会在本月底发布的Laravel 6 中提供,你可以在这个 Pull Request 中查看更多细节。

总结

以上所述是小编给大家介绍的Laravel 6 将新增为指定队列任务设置中间件的功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

PHP 相关文章推荐
怎样在UNIX系统下安装php3
Oct 09 PHP
php 显示指定路径下的图片
Oct 29 PHP
php数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
Nov 07 PHP
解析百度搜索结果link?url=参数分析 (全)
Oct 09 PHP
php警告Creating default object from empty value 问题的解决方法
Apr 02 PHP
php中用memcached实现页面防刷新功能
Aug 19 PHP
php+Mysqli利用事务处理转账问题实例
Feb 11 PHP
php中PDO方式实现数据库的增删改查
May 17 PHP
PHP aes (ecb)解密后乱码问题
Jun 22 PHP
php排序算法实例分析
Oct 17 PHP
php 判断过去离现在几年的函数(实例代码)
Nov 15 PHP
PHP序列化和反序列化深度剖析实例讲解
Dec 29 PHP
Yii框架核心组件类实例详解
Aug 06 #PHP
PHP使用Session实现上传进度功能详解
Aug 06 #PHP
PHP使用ajax的post方式下载excel文件简单示例
Aug 06 #PHP
PHP中的自动加载操作实现方法详解
Aug 06 #PHP
Thinkphp自定义生成缩略图尺寸的方法
Aug 05 #PHP
thinkphp5.1框架中容器(Container)和门面(Facade)的实现方法分析
Aug 05 #PHP
RSA实现JS前端加密与PHP后端解密功能示例
Aug 05 #PHP
You might like
PHP开发框架Laravel数据库操作方法总结
2014/09/03 PHP
PHP实现的简单日历类
2014/11/29 PHP
php支持中文字符串分割的函数
2015/05/28 PHP
codeigniter实现get分页的方法
2015/07/10 PHP
php实现QQ空间获取当前用户的用户名并生成图片
2015/07/25 PHP
JavaScript异步调用定时方法并停止该方法实现代码
2012/03/16 Javascript
jQuery学习之prop和attr的区别示例介绍
2013/11/15 Javascript
js实现的标题栏新消息闪烁提示效果
2014/06/06 Javascript
Jquery中基本选择器用法实例详解
2015/05/18 Javascript
canvas知识总结
2017/01/25 Javascript
node.js 抓取代理ip实例代码
2017/04/30 Javascript
JavaScript箭头(arrow)函数详解
2017/06/04 Javascript
JS+Ajax实现百度智能搜索框
2017/08/04 Javascript
微信小程序开发教程之增加mixin扩展
2017/08/09 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
浅谈JavaScript_DOM学习篇_图片切换小案例
2019/03/19 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
[06:11]2014DOTA2国际邀请赛 专访团结一心的VG战队
2014/07/21 DOTA
python每次处理固定个数的字符的方法总结
2013/01/29 Python
Collatz 序列、逗号代码、字符图网格实例
2017/06/22 Python
Python编程实现控制cmd命令行显示颜色的方法示例
2017/08/14 Python
python如何将图片转换为字符图片
2020/08/19 Python
浅析Python装饰器以及装饰器模式
2018/05/28 Python
Python实现聊天机器人的示例代码
2018/07/09 Python
浅谈Python大神都是这样处理XML文件的
2019/05/31 Python
python虚拟环境完美部署教程
2019/08/06 Python
selenium 多窗口切换的实现(windows)
2020/01/18 Python
Python自动化之UnitTest框架实战记录
2020/09/08 Python
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
公务员的自我鉴定
2013/10/26 职场文书
爱心捐款倡议书
2014/04/14 职场文书
个人担保书范文
2014/05/20 职场文书
在职人员跳槽求职信
2015/03/20 职场文书
高一军训感想
2015/08/07 职场文书
股东合作协议书模板2篇
2019/11/05 职场文书
JS前端可视化canvas动画原理及其推导实现
2022/08/05 Javascript