16

如果给定的 apikey 不正确,我将尝试返回 401 http 状态代码:

class MessageRestfulController extends AbstractRestfulController {
    # ...
    public function get($id) {
        if (!$this->isApiKeyValid()) {
            $response = new Response();
            $response->setStatusCode(Response::STATUS_CODE_401);
            return $response;
        }
        # ...
        return new JsonModel(array(
            'data' => array(...)
        ));
    }
} 

对于我添加的控制器,'strategies' => array('ViewJsonStrategy)'因为它是一个 AbstractRestfulController 并且如果操作成功应该返回 json。

我对 ZF2 真的很陌生,不知道实现这种异常的正确方法是什么。

我目前这样做的方式不起作用。

感谢您的提示!

4

1 回答 1

32

您的控制器已经有一个 Response 对象,在其上设置状态代码并返回

    if (!$this->isApiKeyValid()) {
        $this->getResponse()->setStatusCode(401);
        return;
    }
于 2013-03-06T11:44:46.530 回答