YII2.0的RESTFUL开发-返回结果为JSON的修改方法 [ 2.0 版本 ]
修改:vender/yiisoft/yii2/rest/ActiveController.php 文件
引入类:use yii\web\Response;
增加属性:protected $formatType = 'json';
重写方法:
public function behaviors()
{
	$behaviors = parent::behaviors();
	switch($this->formatType)
	{
		default :
		case 'json' :
		case 'jsonp' :
			$formatType = Response::FORMAT_JSON;
			$behaviors['contentNegotiator']['formats'] = [];
			$behaviors['contentNegotiator']['formats']['application/json'] = $formatType;
			break;
		case 'xml' :
			$formatType = Response::FORMAT_XML;
			$behaviors['contentNegotiator']['formats'] = [];
			$behaviors['contentNegotiator']['formats']['application/xml'] = $formatType;
			break;            
		case 'html' :
			$formatType = Response::FORMAT_HTML;
			$behaviors['contentNegotiator']['formats'] = [];
			$behaviors['contentNegotiator']['formats']['html/text'] = $formatType;
			break;
	}
	return $behaviors;
}
lengyunfei0 BeiJing
            注册时间:2011-09-16
最后登录:2016-03-10
在线时长:1小时54分
    最后登录:2016-03-10
在线时长:1小时54分
- 粉丝2
 - 金钱90
 - 威望10
 - 积分200
 
共 1 条评论
不建议直接修改框架代码,如果以后有升级这些改动非常容易被覆盖掉.
还是自己写基类比较好
嗯,也可以写基类。不过原理都是这样。