【发布时间】:2015-07-20 18:44:12
【问题描述】:
我想使用 laravel 5.1 的 queue:listen 命令通过 Amazon SQS 队列检索以 XML 格式从 Amazon 推送的消息,但收到一条错误消息
传递给 Illuminate\Queue\Jobs\Job::resolveAndFire() 的参数 1 必须是数组类型,给定 null,在 /opt/PhpstormProjects/Amazon_Requester/vendor/laravel/framework/src/Illuminate/Queue/ 中调用Jobs/SqsJob.php 在第 52 行并定义了
所以我查看了上面的类,它通过 fire 方法调用作业:
$this->resolveAndFire(json_decode($this->getRawBody(), true));
这里的问题是 json_decode(...) 返回null,但是当我转储消息的数据时,我得到了预期的 xml 响应。
如果我改变监听器处理我的响应的方式,我无法在不破坏我的代码的情况下更新 laravel,所以我怀疑是否有任何其他方式告诉 laravel 如何处理响应?
【问题讨论】:
-
您能向我们展示您创建工作的代码吗?
-
我不是在创造这份工作。 @ceejayoz 它直接从亚马逊推送到我的队列中,我只收听新消息。
标签: php laravel laravel-5.1