Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 5如何基于SQS消息数据运行命令_Laravel_Queue_Laravel 5_Amazon Sqs_Laravel Artisan - Fatal编程技术网

Laravel 5如何基于SQS消息数据运行命令

Laravel 5如何基于SQS消息数据运行命令,laravel,queue,laravel-5,amazon-sqs,laravel-artisan,Laravel,Queue,Laravel 5,Amazon Sqs,Laravel Artisan,我正在尝试在laravel中设置一个基于sqs的消息队列。 我设置了queue.php文件,并且在运行artisan queue:listen命令时成功检索了消息。但是,我得到一个[ReflectionException],告诉我我的命令不存在 存储在SQS上用于检索的消息如下所示: {"job":"HELLOWORLD"} 我已经创建了一个laravel/artisan命令,其名称与上的说明相同 但是,当我运行命令时 php artisan queue:listen 从SQS检索消息时,

我正在尝试在laravel中设置一个基于sqs的消息队列。 我设置了queue.php文件,并且在运行artisan queue:listen命令时成功检索了消息。但是,我得到一个[ReflectionException],告诉我我的命令不存在

存储在SQS上用于检索的消息如下所示:

{"job":"HELLOWORLD"}
我已经创建了一个laravel/artisan命令,其名称与上的说明相同

但是,当我运行命令时

php artisan queue:listen 
从SQS检索消息时,我得到以下错误

  [ReflectionException]
  Class HELLOWORLD does not exist
我的问题是如何让laravel识别这个命令,一旦这个命令起作用,如何让laravel看到SQS上包含的JSON消息中的其他项。 例如,让我们假设我有另一个名为“message”的索引,其中包含数据“hello from sqs”,使我的json看起来像

{"job":"HELLOWORLD","message":"Hello from SQS"}
我将如何访问另一个字段?
提前谢谢。Laravel中关于队列的文档非常稀少

答案是我做得完全错误。您需要使用Laravel队列文档中所示的
$contoller->dispatch
方法


如果您这样做,消息将正确形成,并且您创建的类中的任何变量仍将存在

为什么要将作业/类名指定为全大写?因为我不知道自己在做什么。queue部分没有指定作业(或通常的队列消息)的外观。
{"job":"HELLOWORLD","message":"Hello from SQS"}