Php 在yii2restapi中同时使用JSON和JSONP格式
我是yiiframework的新手 我想在Yi2 REST api中同时使用JSONP和JSON格式,这意味着如果api调用正常,响应获取JSON,如果api调用JSONP ajax,获取JSONP结果,我在论坛或stackoverflow中找不到任何配置。我该怎么做?我在控制器的行为中使用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。如何一起配置?使用类的属性: 谢谢,但我不
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
);
}
}