2

私はyiiframeworkが初めてです。

Yii2 REST API で JSONP と JSON 形式を一緒に使用したいのですが、それは、API が通常の呼び出しを行った場合、応答が json を取得し、API が jsonp ajax を使用して呼び出した場合、JSONP の結果を取得することを意味します。 . どうすればいいですか?ビヘイビアーをコントローラーに使用しますが、コントローラーをビヘイビアーで一緒に使用しResponse::FORMAT_JSONたいです。一緒に設定するには?Response::FORMAT_JSONResponse::FORMAT_JSONP

4

1 に答える 1

2

クラスの使用formatプロパティ:yii\web\Response

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
            );
    }
}
于 2014-12-19T09:03:44.893 に答える