【问题标题】:How to store error exception in a variable and return as json如何将错误异常存储在变量中并以json形式返回
【发布时间】:2016-02-12 02:26:23
【问题描述】:

我正在使用 Android 开发使用的 API。 我的框架:Laravel 4.2 和 PHP:PHP5.6

我已经找到了一个库,但无法使用:https://github.com/Radweb/JSON-Exception-Formatter

我的问题,我有这个错误异常(附图)

我在 Mobile 中看不到它,它只是崩溃了。我使用 https://www.getpostman.com/ 来测试我的 API。

我想要做的是将此错误异常作为 json 返回,以便 android 可以捕获它。

{ "status" : "fail", "messsage" : "syntax error, unexpected 's'(T_STRING), expecting ']'", "file" : "/app/controller/v1/UserController.php", "line" : "31" }

【问题讨论】:

  • 您需要帮助让 JSON-Exception-Formatter 库正常工作,还是需要帮助配置 laravel 以输出 JSON 而不是默认异常处理程序?你的问题有点不清楚。
  • @henrik 任何东西。目标是将错误异常存储在变量中并以 json 形式返回

标签: api exception laravel-4 error-handling php-5.6


【解决方案1】:

要使 Laravel 4 将异常输出为 JSON,可以简单地编辑 global.php,如本文所述:http://fideloper.com/error-handling-with-content-negotiation

所以在你的 app/start/global.php 中做这样的事情:

use Symfony\Component\HttpKernel\Exception\HttpExceptionInterface;

App::error(function(HttpExceptionInterface $exception, $code)
{

    if ( Request::header('accept') === 'application/json' )
    {
        return Response::json([
            'error' => true,
            'message' => $exception->getMessage(),
            'code' => $code],
            $code
        );
    }

});

【讨论】:

  • 不,它没有使用除 laravel 框架之外的任何包
  • 太棒了。没有使用图书馆?好吧,我试试这个
猜你喜欢
  • 1970-01-01
  • 2019-04-25
  • 2016-10-30
  • 2016-07-27
  • 2012-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-20
相关资源
最近更新 更多