我想在Yii 1中返回带有HTTP错误代码的数据。所以我使用了以下方式来获取数据。 $code = (0 == $ex->getCode()) ? (isset($ex->statusCode) ? $ex->statusCode : 500) : $ex->getCode(); $this->setOutputError($ex->getMessage()); $this->setOutputCode($code);当我以这种方式使用它时,API 返回带有 200 错误代码的数据,如下所示但我想改变标题状态200,所以我为此抛出异常,然后输出数据也改变了。我只想更改标题状态。$code = (0 == $ex->getCode()) ? (isset($ex->statusCode) ? $ex->statusCode : 500) : $ex->getCode(); $this->setOutputError($ex->getMessage()); $this->setOutputCode($code); throw new CHttpException(400, 'Bad Request');
1 回答
MYYA
TA贡献1868条经验 获得超4个赞
Yii 1.1 没有响应抽象,你需要使用http_response_code()来改变响应状态码:
$code = (0 == $ex->getCode()) ? (isset($ex->statusCode) ? $ex->statusCode : 500) : $ex->getCode();
$this->setOutputError($ex->getMessage());
$this->setOutputCode($code);
http_response_code(400);
或者,您也可以使用header(),但这比较棘手。
- 1 回答
- 0 关注
- 72 浏览
添加回答
举报
0/150
提交
取消