CakePHP - JsonView渲染是控制器的子功能

时间:2015-03-23 15:57:59

标签: php json cakephp cakephp-2.0

我正在使用带有 json解析扩展的Cakephp和 RequestHandler 组件,以便使用json创建Web服务。

我创建了一个名为Ws的控制器 在这个控制器中,我有一个名为userSubscribe

的名字

为了避免在下一个方法中使用很多If else语句,我考虑在这个控制器中使用一个私有函数来检查某些条件并正常停止脚本但是也正常地渲染json。我只是想干嘛!

我的问题是:

如何在子函数中渲染json视图(由userSubscribe调用)?

为清楚起见,这是希望

的样式代码
public function userSubscribe() {
    $this->check();

    // Following code only executed if check didn't render the json view
    // $data = ...
    $code = 1;
    $i = 2;
}

private function check() {
    $input = &$this->request->data;
    if ($_SERVER["CONTENT_TYPE"] != "application/json") { // For example
        $result = "KO";
        $this->set(compact("result"));
        $this->set('_serialize', 'result');

        $this->render(); // HERE, it will stop the 'normal behaviour' and render the json with _serialize
    }
    if (!isset($input["input"])) {
        $result = "KO";
        $this->set(compact("result"));
        $this->set('_serialize', 'result');

        $this->render(); // HERE, it will stop the 'normal behaviour' and render the json with _serialize
    }
}

这似乎很简单,但为什么我找不到答案?!

提前感谢线索/建议/任何事情!

0 个答案:

没有答案