dqrb4228 2015-06-10 18:28
浏览 43
已采纳

如何在Laravel中获取没有HTML的原始异常消息?

I make ajax requests to Laravel backend.

In backend I check request data and throw some exceptions. Laravel, by default, generate html pages with exception messages.

I want to respond just raw exception message not any html.

->getMessage() doesn't work. Laravel, as always, generate html.

What shoud I do?

  • 写回答

1条回答 默认 最新

  • dos71253 2015-06-10 18:56
    关注

    In Laravel 5 you can catch exceptions by editing the render method in app/Exceptions/Handler.php.

    If you want to catch exceptions for all AJAX requests you can do this:

    public function render($request, Exception $e) 
    {
        if ($request->ajax()) {
            return response()->json(['message' => $e->getMessage()]);
        }
    
        return parent::render($request, $e);
    }
    

    This will be applied to ANY exception in AJAX requests. If your app is sending out an exception of App\Exceptions\MyOwnException, you check for that instance instead.

    public function render($request, Exception $e)
    {   
        if ($e instanceof \App\Exceptions\MyOwnException) {
            return response()->json(['message' => $e->getMessage()]);
        }
    
        return parent::render($request, $e);
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探