php - Laravel 4 总是返回 HTTP 状态码 200

标签 php laravel laravel-4

我在 error.php 中有以下代码,它是在我的 Controller 中使用 App::abort(404, $error) 触发的。我的响应状态代码仍然是 200(ok)。我尝试了各种错误代码,例如 400、403

// NotFoundException handler
App::error(function(NotFoundException $e)
{
    $default_message = 'The requested resource was not found';

    return Response::json(array(
        'error' => $e->getMessage() ?: $default_message,
    ), 404);
 });

最佳答案

对于仍在谷歌搜索此问题的任何人:

我为这个问题苦苦挣扎了几个小时。对我来说,问题是由我的一个 Controller 的问题引起的。

检查所有 Controller 并确保 <?php 前面没有空格标签。 < ?php标签应该是文件中的第一件事。 <?php 前面的一个空格在任何这样路由的 Controller 中标记:

Route::controller('example', 'ExampleController');

将导致所有状态代码为 200。

关于php - Laravel 4 总是返回 HTTP 状态码 200,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16724772/

相关文章:

PHP 解析错误 : syntax error, 意外 '?' - laravel

mysql - 如何在 Laravel 5 中的一对多关系中仅查询一个外部行

json - Laravel 4 和 Mandrill JSON 响应

php - Websockets,并识别独特的同行[PHP]

javascript - 使用 XSS 执行 PHP 代码

php - ZF2 ServiceManager 无法创建doctility.entitymanager.orm_default

php - Laravel 用户名身份验证不区分大小写

laravel - 尝试打印集合 laravel 时尝试获取非对象的属性

php - Laravel 4 命名空间没有\

html - 如何在 Laravel 4 中将表格的一行变灰?