Проблема laravel с отправкой данных в RabbitMQPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Проблема laravel с отправкой данных в RabbitMQ

Сообщение Anonymous »

У меня есть эта проблема в моем коде: у меня есть 2 микросервиса laravel 10: в первом я отправляю в очередь такую ​​переменную:

Код: Выделить всё

        Queue::connection('rabbitmq')->push('App\Jobs\UpdateProductStock', $orderData);
и в задании, которое получит это, отображается:
local.ERROR: разрешение неразрешимой зависимости [Параметр #0 [$orderData]] в классе App\Jobs\UpdateProductStock { "Exception":"[объект]
в задании получателя:

Код: Выделить всё

namespace App\Jobs;

use App\Models\Product;
use Illuminate\Bus\Queueable;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Queue;
use Illuminate\Queue\SerializesModels;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Support\Facades\Queue;
use VladimirYuldashev\LaravelQueueRabbitMQ\Queue\Connectors\RabbitMQConnector;

class UpdateProductStock implements ShouldQueue
{

/**
* Create a new job instance.
*/
public $orderData;

public function __construct($orderData)
{
$this->orderData = $orderData;
}

/**
* Execute the job.
*/
public function handle()
{
Log::info("Test job executed successfully.");
я так понимаю, переменная, отправленная первой службой, не была получена второй.
Пожалуйста, помогите?
i попытались изменить структуру работы следующим образом:

Код: Выделить всё

use VladimirYuldashev\LaravelQueueRabbitMQ\Queue\Connectors\RabbitMQConnector as BaseJob;

class UpdateProductStock extends BaseJob
{

/**
* Create a new job instance.
* @return void
*/

/**
* Execute the job.
*/
public function fire()
{$payload = $this->getRawBody();
но он дает неопределенный метод getRawBody

Подробнее здесь: https://stackoverflow.com/questions/791 ... o-rabbitmq
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»