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 相关文章推荐
用PHP读取flv文件的播放时间长度
Sep 03 PHP
phpmyadmin里面导入sql语句格式的大量数据的方法
Jun 05 PHP
php生成RSS订阅的方法
Feb 13 PHP
memcache一致性hash的php实现方法
Mar 05 PHP
PHP用反撇号执行外部命令
Apr 14 PHP
yii的入口文件index.php中为什么会有这两句
Aug 04 PHP
mysql查找删除重复数据并只保留一条实例详解
Sep 24 PHP
PHP全功能无变形图片裁剪操作类与用法示例
Jan 10 PHP
phpmyadmin下载、安装、配置教程
May 16 PHP
PHP实现动态获取函数参数的方法示例
Apr 02 PHP
vmware linux系统安装最新的php7图解
Apr 14 PHP
thinkphp5+layui实现的分页样式示例
Oct 08 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的cURL库简介及使用示例
2015/02/06 PHP
使用PHP json_decode可能遇到的坑与解决方法
2017/08/03 PHP
php通过header发送自定义数据方法
2018/01/18 PHP
sina的lightbox效果。
2007/01/09 Javascript
jquery 单击li防止重复加载的实现代码
2010/12/24 Javascript
javascript firefox 自动加载iframe 自动调整高宽示例
2013/08/27 Javascript
js写的方法实现上传图片之后查看大图
2014/03/05 Javascript
JavaScript通过join函数连接数组里所有元素的方法
2015/03/20 Javascript
JS实现定时自动关闭DIV层提示框的方法
2015/05/11 Javascript
关于jquery中动态增加select,事件无效的快速解决方法
2016/08/29 Javascript
JS控制FileUpload的上传文件类型实例代码
2016/10/07 Javascript
浅析BootStrap Treeview的简单使用
2016/10/12 Javascript
VSCode配置react开发环境的步骤
2017/12/27 Javascript
微信小程序实现自定义picker选择器弹窗内容
2020/05/26 Javascript
jquery无缝图片轮播组件封装
2020/11/25 jQuery
微信小程序结合mock.js实现后台模拟及调试
2019/03/28 Javascript
小程序实现订单倒计时功能
2019/04/23 Javascript
JS判断数组里是否有重复元素的方法小结
2019/05/21 Javascript
vue-cli4使用全局less文件中的变量配置操作
2020/10/21 Javascript
[39:07]LGD vs VP 2018国际邀请赛淘汰赛BO3 第二场 8.21
2018/08/22 DOTA
python访问sqlserver示例
2014/02/10 Python
Python获取远程文件大小的函数代码分享
2014/05/13 Python
python中xrange用法分析
2015/04/15 Python
python构建深度神经网络(续)
2018/03/10 Python
解决pycharm 误删掉项目文件的处理方法
2018/10/22 Python
python3+PyQt5 实现Rich文本的行编辑方法
2019/06/17 Python
Python实现微信机器人的方法
2019/09/06 Python
纯CSS3实现圆圈动态发光特效动画的示例代码
2021/03/08 HTML / CSS
介绍一下XMLHttpRequest对象的常用方法和属性
2013/05/24 面试题
会计主管岗位职责
2014/01/03 职场文书
运动会广播稿200米
2014/01/27 职场文书
2015年先进个人自荐书
2015/03/24 职场文书
今日说法观后感
2015/06/08 职场文书
2015年小学师德师风建设工作总结
2015/10/23 职场文书
古诗文之爱国名句(77句)
2019/09/24 职场文书
彻底弄懂Python中的回调函数(callback)
2022/06/25 Python