当我拨打$app->halt(200, "Lorem ipsum");
或304之外的任何其他状态代码时,它会使用正确的状态代码进行响应并打印出正文。但是使用相同的代码,只需将200更改为304 $app->halt(304, "Lorem ipsum");
,返回的状态代码为304,但正文为空。
这个问题的原因是什么?我怎么能用响应代码304打印出响应体?
答案 0 :(得分:3)
您不能拥有304的身体。来自规范
10.3.5 304未修改
如果客户端执行了条件GET请求并且访问权限是 允许,但文件尚未修改,服务器应该 回复此状态代码。 304响应不得包含 message-body,因此始终由第一个空行终止 在标题字段之后。