YII2 学习笔记-- RESTFUL API

来源:互联网 发布:淘宝长袖t恤 编辑:程序博客网 时间:2024/04/23 17:43
1、路由配置
'urlManager' => [
'enablePrettyUrl' => true,
'showScriptName' => false,
'enableStrictParsing' =>true,
'rules' => [
[
'class'=>'yii\rest\UrlRule',
'controller'=>['V1/default']
]
],

2、继承ActiveController 类并指定 $modelClass 属性
3、默认有 CURD 方法,通过 action() 方法 unset() 取消默认方法
4、RESPONSE 配置可以指定格式化结构:
'response'=>[
'format' => yii\web\Response::FORMAT_JSON,
'charset' => 'UTF-8',
],
5、指定http头的Accept字段,Accept:application/json返回json格式,Accept:application/xml返回xml格式
6、可以通过在行为里面配置 指定返回数据格式
publicfunctionbehaviors(){ $behaviors = parent::behaviors(); $behaviors['contentNegotiator']['formats'] = ''; $behaviors['contentNegotiator']['formats']['application/json'] = Response::FORMAT_JSON; return $behaviors;}
7、对 urlManager 的 rules 配置中设置参数 'pluralize' => false 就可以关闭控制器名字后面多一个 s 了
8、通过对 urlManager 的 rules 指定extraPatterns 参数配置自定义的action
  1. 'urlManager' => [  
  2.     'enablePrettyUrl' => true,  
  3.     'showScriptName' => false,  
  4.     'rules' => [  
  5.         [  
  6.             'class' => 'yii\rest\UrlRule',  
  7.             'controller' => ['v1/users'],  
  8.             'pluralize' => false,  
  9.             'extraPatterns' => [  
  10.                 'GET versions' => 'version',  
  11.                 'GET search/<id:\d+>' => 'search',  
  12.                 'POST newusers' => 'add'  
  13.             ],  
  14.               
  15.         ],  
  16.     ],  
  17. ],  
9\ 在配置中为 RESTFUL 关闭 session ,user => [enableSession=>false]






























0 0
原创粉丝点击