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写MySQL数据 实现代码
Jun 15 PHP
PHP is_dir() 判断给定文件名是否是一个目录
May 10 PHP
php数组函数序列之array_keys() - 获取数组键名
Oct 30 PHP
PHP对象转换为数组函数(递归方法)
Feb 04 PHP
精美漂亮的php分页类代码
Apr 02 PHP
基于PHP选项与信息函数的使用详解
May 10 PHP
php使用filter过滤器验证邮箱 ipv6地址 url验证
Dec 25 PHP
Thinkphp中的volist标签用法简介
Jun 18 PHP
thinkphp3.x中display方法及show方法的用法实例
May 19 PHP
php文件系统处理方法小结
May 23 PHP
php反射学习之依赖注入示例
Jun 14 PHP
详解php反序列化
Jun 10 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
Notice: Trying to get property of non-object problem(PHP)解决办法
2012/03/11 PHP
str_replace只替换一次字符串的方法
2013/04/09 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
2017/05/20 PHP
php array_chunk()函数用法与注意事项
2019/07/12 PHP
javascript 写类方式之二
2009/07/05 Javascript
基于jquery的web页面日期格式化插件
2011/11/15 Javascript
poshytip 基于jquery的 插件 主要用于显示微博人的图像和鼠标提示等
2012/10/12 Javascript
JS:window.onload的使用介绍
2013/11/13 Javascript
jquery插件jquery倒计时插件分享
2013/12/27 Javascript
Javascript的闭包详解
2014/12/26 Javascript
.NET微信公众号开发之创建自定义菜单
2015/07/16 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
2016/01/28 Javascript
jQuery实现日期联动效果实例
2016/07/26 Javascript
解决vue 按钮多次点击重复提交数据问题
2018/05/10 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
Vue.js实现数据响应的方法
2018/08/13 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
微信小程序页面缩放式侧滑效果的实现代码
2018/11/15 Javascript
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
javascript实现弹幕墙效果
2019/11/28 Javascript
vue 子组件修改data或调用操作
2020/08/07 Javascript
python开启多个子进程并行运行的方法
2015/04/18 Python
Python中利用Scipy包的SIFT方法进行图片识别的实例教程
2016/06/03 Python
python对象及面向对象技术详解
2016/07/19 Python
15行Python代码带你轻松理解令牌桶算法
2018/03/21 Python
Python CSS选择器爬取京东网商品信息过程解析
2020/06/01 Python
浅谈Keras中shuffle和validation_split的顺序
2020/06/19 Python
Python创建简单的神经网络实例讲解
2021/01/04 Python
美国休闲服装品牌:Express
2016/09/24 全球购物
会计实习自我鉴定
2013/12/04 职场文书
生日宴会主持词
2014/03/20 职场文书
医院反腐倡廉演讲稿
2014/09/16 职场文书
考试作弊检讨书
2014/10/21 职场文书
党校毕业个人总结
2015/02/28 职场文书
2016年“我们的节日·清明节”活动总结
2016/04/01 职场文书