Yii2 - 在休息(json)和普通html输出之间切换响应

时间:2015-08-08 06:19:48

标签: php ajax rest yii yii2

当某人使用ajax X-Requested-With时,我需要一种主动休息的方法 并在没有时停用。用这种方式我可以处理搜索引擎 或没有ajax的用户。(改善SEO)

一些研究:( 使用行为

public function behaviors()
{
    return [
        'verbs' => [
            'class' => \yii\web\ResponseFilter::className(),
            'actions' => [
                'something'  => [
                    'format' => Response::FORMAT_JSON,
                ],
            ],
        ],
    ];
}

检查请求标头并更改响应。

或:( 编辑休息控制器

$serializer = 'yii\rest\Serializer';修改为$serializer = null;

或(在休息控制器操作后覆盖

public function afterAction($action, $result)
{
    $result = parent::afterAction($action, $result);
    return $this->serializeData($result);
}

并删除serializeData()一些如何...

但最终方式是什么?

我认为这些方法并不好......

0 个答案:

没有答案