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将数据导入到Foxmail
Oct 09 PHP
用PHP编程开发“虚拟域名”系统
Oct 09 PHP
PHP中操作ini配置文件的方法
Apr 25 PHP
php中利用explode函数分割字符串到数组
Feb 08 PHP
zf框架的session会话周期及次数限制使用示例
Mar 13 PHP
PHP return语句另类用法不止是在函数中
Sep 17 PHP
php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
May 25 PHP
php三种实现多线程类似的方法
Oct 30 PHP
PHP函数引用返回的实例详解
Sep 11 PHP
yii2.0数据库迁移教程【多个数据库同时同步数据】
Oct 08 PHP
php与c 实现按行读取文件实例代码
Jan 03 PHP
ThinkPHP框架实现的微信支付接口开发完整示例
Apr 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
php去掉字符串的最后一个字符附substr()的用法
2011/03/23 PHP
simplehtmldom Doc api帮助文档
2012/03/26 PHP
PHP异常处理浅析
2015/05/12 PHP
PHP实现简单数字分页效果
2015/07/26 PHP
php分页查询mysql结果的base64处理方法示例
2017/05/18 PHP
PHP验证码无法显示的原因及解决办法
2017/08/11 PHP
PHP框架Laravel中使用UUID实现数据分表操作示例
2018/05/30 PHP
PHP 实现 JSON 数据的编码和解码操作详解
2020/04/22 PHP
window.onbeforeunload方法在IE下无法正常工作的解决办法
2010/01/23 Javascript
javascript attachEvent绑定多个事件执行顺序问题
2010/10/20 Javascript
深入理解JavaScript系列(11) 执行上下文(Execution Contexts)
2012/01/15 Javascript
5个最佳的Javascript日期处理类库分享
2012/04/15 Javascript
JS中产生20位随机数以0-9为例也可以是a-z A-Z
2014/08/01 Javascript
js计算任意值之间随机数的方法
2015/01/16 Javascript
jQuery增加自定义函数的方法
2015/07/18 Javascript
ES6学习笔记之Set和Map数据结构详解
2017/04/07 Javascript
vue动态生成dom并且自动绑定事件
2017/04/19 Javascript
微信小程序 wx.request方法的异步封装实例详解
2017/05/18 Javascript
Vue2.0 实现移动端图片上传功能
2018/05/30 Javascript
js技巧之十几行的代码实现vue.watch代码
2018/06/09 Javascript
vue中的ref和$refs的使用
2018/11/22 Javascript
js实现简单的点名器随机色实例代码
2020/09/20 Javascript
Python splitlines使用技巧
2008/09/06 Python
python使用Tkinter显示网络图片的方法
2015/04/24 Python
python 遍历目录(包括子目录)下所有文件的实例
2018/07/11 Python
Python下简易的单例模式详解
2019/04/08 Python
在Django下测试与调试REST API的方法详解
2019/08/29 Python
详解pyinstaller selenium python3 chrome打包问题
2019/10/18 Python
谈一谈数组拼接tf.concat()和np.concatenate()的区别
2020/02/07 Python
对pytorch中x = x.view(x.size(0), -1) 的理解说明
2021/03/03 Python
IE浏览器单独写CSS样式的几种方法
2014/10/14 HTML / CSS
Bibloo奥地利:购买女装、男装、童装、鞋和配件
2018/10/18 全球购物
Bibloo匈牙利:女装、男装、童装及鞋子和配饰
2019/04/14 全球购物
Python里面如何实现tuple和list的转换
2012/06/13 面试题
城市轨道交通工程职业规划书范文
2014/01/18 职场文书
八月迷情观后感
2015/06/11 职场文书