• 默认是有个JsonResponseFormatter的,但是呢,我们如果做APP的API的话,json响应的格式和内容,每个人的约定都是有差异的,不可能和yii2默认的相一致。之前通过搜索搜索到的答案是,给Response对象的EVENT_BEFORE_SEN事件注册一个处理函数,在发送结果之前再处理一下。原文链接:https://github.com/yiisoft/yii2/blob/master/docs/guide-zh-CN/rest-error-handling.md主要代码如下:return [     // ...     'components' => [         'response' => [             'class' => 'yi...
     发布日期: 2016-12-15 00:03:38  分类: PHP  热度: 445 ℃
  • yii2的程序功能测试yii2集成了Codeception测试框架,所以是官方支持程序的单元测试,功能测试和验收测试。yii2的基本应用模板和高级应用模板都支持这三种测试。测试文件是在tests目录,很明显。这里主要是介绍怎么来用框架提供的这个测试功能。第一步安装Codeception:composer global require "codeception/codeception=2.0.*" composer global require "codeception/specify=*" composer global require "codeception/verify=*"第二步是添加全局命令执行命令composer global status,命令的输出应该会有一个目录,类似如下输...
     发布日期: 2015-06-02 20:34:18  分类: PHP  热度: 2088 ℃
  • 基于角色的访问控制提供了简单而又功能强大的集中的访问控制。配置RBAC管理器在定义鉴权数据并执行访问检查之前,必须先配置authManager组件。Yii提供了两种鉴权管理器:yii\rbac\PhpManager 和 yii\rbac\DbManager。前者使用一个PHP脚本文件管理鉴权数据,而后者是把数据存储在数据库里面。假如你的应用不需要经常变动的角色和权限管理,你可以考虑前者。下面的代码展示了如何在应用里面配置authManager:return [     // ...     'components' => [         'authManager' => [             'class' => 'yii\rbac\PhpManager', //...
     发布日期: 2014-10-11 08:24:39  分类: PHP  热度: 6743 ℃
  • 鉴权就是验证一个用户是否有足够权限去做一件事的过程。Yii提供了两种鉴权方式:Access Control Filter (ACF,访问控制过滤器)和Role-Based Access Control (RBAC,基于角色的访问控制)。访问控制过滤器(ACF)ACF是一种简单的鉴权方式,是用来做一些简单的访问控制的一种好方法。顾名思义,ACF是作为一个行为(behavior)附加在控制器(controller)或者一个模块(module)上的动作过滤器。ACF会检查一组访问规则,以确认当前用户是否有足够的权限访问动作(action)。以下代码展示了如何去使用ACF:use yii\filters\AccessControl; class SiteController extends Con...
     发布日期: 2014-09-19 16:50:05  分类: PHP  热度: 4867 ℃