【发布时间】:2013-01-20 05:01:32
【问题描述】:
我就是看不懂,也不知道去哪里找,因为下面代码的响应状态码总是200,即使我在主响应类中设置为400。
class Api_Controller extends Base_Controller
{
public function __construct()
{
parent::__construct();
//header("HTTP/1.0 404 Not Found"); ##> This works
//die();
$test = array('1' => '2');
die(Response::json($test, 400));
}
我错过了什么?我没有使用任何扩展类,只是默认的......
更新
这是上面Response::json...的输出:http://pastebin.com/RGcinSdg
如您所见,输出具有已设置的值...但仍出于某种原因返回 200
更新2
var_dump(http_response_code()); 的输出总是200
Update3 - 临时修复
我已经激活了Response::json 的扩展版本,并在其中添加了以下行
http_response_code($status);
但我仍然很想知道它为什么不这样做,它应该以何种方式完成
【问题讨论】:
-
可能在你想设置状态码之前就开始输出了。但是如果你有错误报告,这应该很容易发现。
-
错误报告已开启...我已经用
resonse::json的输出更新了问题
标签: php json laravel http-status-codes