Yii2快速构建RESTful Web服务功能简介

时间:2014-07-29 21:51:24   收藏:0   阅读:535

Yii2相比Yii1而言,一个重大的改进是内置了功能完备的RESTful支持。

其内置RESTful支持提供了如下功能:

这些功能如果都是自己来实现,且还要有良好的扩展性、定制性,

还是要花费不少精力的,不过好在Yii2已经都很好的实现了并且还很容易进行扩展。

下面是一些功能的简单介绍:

Yii2中可定制输出变得很简单,比如想输出某些列或排除某些列,只需要简单的覆盖(override)活动记录的fields方法即可。

Yii2中对API版本控制的支持结合了业界流行的两种方式,一种为在URL中嵌入版本号(如http://api.techbrood.com/v1/users),一种是在HTTP Accept头中指定。

Yii2以前者支持大版本,而以后者支持小版本号。这样可以在简化代码、代码分离和复用之间达成较好的平衡。

Yii2中的安全机制支持3种方式,HTTP BASIC AUTH,查询参数(即在URL参数中包含访问令牌)和 开源协议 OAUTH2。


下面使用最少的语句来实现一个用户(User)资源的完整Web服务:

首先,创建一个控制器类 app\controllers\UserController

namespace app\controllers;

use yii\rest\ActiveController;

class UserController extends ActiveController {
    public $modelClass = ‘app\models\User‘;
}

然后,修改config中的 urlManager 配置项:

‘urlManager‘ => [
    ‘enablePrettyUrl‘ => true,
    ‘enableStrictParsing‘ => true,
    ‘showScriptName‘ => false,
    ‘rules‘ => [
        [‘class‘ => ‘yii\rest\UrlRule‘, ‘controller‘ => ‘user‘],
    ],
]

这样就行了!你可以在你的浏览器中试着访问下:http://localhost/users。

这只是用户列表接口,Yii2实际自动帮你创建了一整套接口:

bubuko.com,布布扣

完整功能请查阅Yii2中文指南RESTful部分:Yii2 中文权威指南


by iefreer

Yii2快速构建RESTful Web服务功能简介,布布扣,bubuko.com

原文:http://blog.csdn.net/iefreer/article/details/38277475

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!