php webhook не является допустимым классом заданий webhook процесса. Допустимый класс должен реализовывать » SpatieWebhookClientProcessWebhookJob`

#php #laravel #webhooks

Вопрос:

Я получил эту ошибку при получении webhook, я пытаюсь ее решить, я нашел ошибку в хранилище/журналах.

производство ошибок.ОШИБКА: appHandlerWebhookHandler недопустимый класс задания веб — крючка процесса. Допустимый класс должен реализовываться SpatieWebhookClientProcessWebhookJob .

Конфигурация: webhook-client.php

 <?php

return [
    'configs' => [
        [
            'name' => 'default',
            'signing_secret' => env('CLIENT_SECRET'),
            'signature_header_name' => 'Signature', SpatieWebhookClientSignatureValidatorSignatureValidator
             */
            'signature_validator' => SpatieWebhookClientSignatureValidatorDefaultSignatureValidator::class,
            'webhook_profile' => SpatieWebhookClientWebhookProfileProcessEverythingWebhookProfile::class,
            'webhook_response' => SpatieWebhookClientWebhookResponseDefaultRespondsTo::class,
            'webhook_model' => SpatieWebhookClientModelsWebhookCall::class,
            'process_webhook_job' => appHandlerWebhookHandler::class,
        ],
    ],
];
 

Класс:
WebhookHandler.php

 
<?php

namespace appHandler;

use SpatieWebhookClientProcessWebhookJob;

class WebhookHandler extends ProcessWebhookJob
{

    public function handle()
    {
        error_log('test');
    }
}

 

Ответ №1:

Это должно быть AppОбработчикWebhookHandler::класс. Из-за автоматической загрузки композитора он находится в пространстве App имен вместо структуры папок app . Таким же должно быть ваше пространство имен в Webhook namespace AppHandler; .

Вместо этого более безопасным решением является написание класса WebhookHandler::и позвольте вашей среде разработки или аналогичной среде автоматически включить его в качестве инструкции use.

 use AppHandlerWebhookHandler;

...

'process_webhook_job' => WebhookHandler::class,