Php 在yii2restapi中同时使用JSON和JSONP格式

Php 在yii2restapi中同时使用JSON和JSONP格式,php,yii,yii2,yii2-advanced-app,Php,Yii,Yii2,Yii2 Advanced App,我是yiiframework的新手 我想在Yi2 REST api中同时使用JSONP和JSON格式,这意味着如果api调用正常,响应获取JSON,如果api调用JSONP ajax,获取JSONP结果,我在论坛或stackoverflow中找不到任何配置。我该怎么做?我在控制器的行为中使用Response::FORMAT_JSON,但我希望在控制器的行为中一起使用Response::FORMAT_JSON和Response::FORMAT_JSONP。如何一起配置?使用类的属性: 谢谢,但我不

我是yiiframework的新手

我想在Yi2 REST api中同时使用JSONP和JSON格式,这意味着如果api调用正常,响应获取JSON,如果api调用JSONP ajax,获取JSONP结果,我在论坛或stackoverflow中找不到任何配置。我该怎么做?我在控制器的行为中使用
Response::FORMAT_JSON
,但我希望在控制器的行为中一起使用
Response::FORMAT_JSON
Response::FORMAT_JSONP
。如何一起配置?

使用类的属性:


谢谢,但我不想让代码生效,我想在行为部分配置。
public class YourController extends Controller {
    /**
     * json/jsonp witching example
     */
    function actionJson(
        $callback = null
    ) {
        // retrieve data to be returned
        $data = array(
            // your data here
        );
        // set "fomat" property
        Yii::$app->getResponse()->format =
            (is_null($callback)) ?
                self::FORMAT_JSON : 
                self::FORMAT_JSONP;
        // return data
        return (is_null($callback)) ?
            $data :
            array(
                'data'     => $data,
                'callback' => $callback
            );
    }
}