rinsvent/exception-bundle

v1.0.3 2022-11-04 11:19 UTC

This package is auto-updated.

Last update: 2024-09-04 15:35:21 UTC


README

当前包中的附加功能

  • 系统捕获异常,将其序列化为JSON格式并返回错误
  • 自动将错误翻译为当前locale

用于生产环境

{
  "codeText": "access_denied",
  "code": 300,
  "message": "Доступ запрещен",
  "summary": "Access denied"
}

用于开发环境

{
  "codeText": "access_denied",
  "code": 300,
  "message": "Доступ запрещен",
  "summary": "Access denied",
  "system_message": "Native exception message",
  "trace": "..."
}

例如,可以注册自己的Enum和异常列表

<?php

declare(strict_types=1);

namespace App\EventListener;

use App\Exception\ExceptionEnum;
use Rinsvent\Exception\AbstractException;
use Symfony\Component\EventDispatcher\Attribute\AsEventListener;

#[AsEventListener(event: 'kernel.request', priority: 1000, method: 'onStart')]
class StartConfigListener
{
    public function onStart(): void
    {
        AbstractException::$exceptionEnum = ExceptionEnum::class;
    }
}