Laravel 5:在控制器中返回简单数据

时间:2015-07-11 19:13:07

标签: php json laravel

我有一个API控制器,我总是返回JSON。返回状态将始终为200,因为对于其他情况,我会抛出异常并在全局范围内处理它们。我曾经在每个控制器的方法中使用return response()->json($content);,但我将其更改为在中间件中形成JSON。现在,我到处都有return response($content);。我正在考虑更简化它,而只是return $content;。它有效,但我不确定它是否是合理的解决方案。

这个想法背后有陷阱吗?

1 个答案:

答案 0 :(得分:0)

我相信这是一个很好的解决方案,因为您使用的是中间件。在您不希望以JSON形式返回数据的路线中,您可以简单地将它们排除在运行中间件之外。

将来如果要以其他格式返回数据,您甚至可以在运行中间件时将格式作为参数传递。例如:

Route::get('resource/{id}', ['middleware' => 'format:xml', function ($id) {
    //
}]);