永发信息网

yii2.0里面控制器怎么调用接口

答案:1  悬赏:20  手机版
解决时间 2021-11-08 14:18
  • 提问者网友:风月客
  • 2021-11-07 21:37
yii2.0里面控制器怎么调用接口
最佳答案
  • 五星知识达人网友:妄饮晩冬酒
  • 2021-11-07 22:38
说到 REST ,现在大多的所谓 REST 风格,没有达到真正 REST 定义的那样,
不过面向实用我们不必拘泥这些概念上的问题,如果有看官觉得觉得实现不够 REST 敬请拍砖,
具体问题我们可以具体讨论。

首先做一下接口的 URL 规划,假设我们要面对的资源是 item ,
现在我们暴露5个接口供其他应用调用,

分别是:
对于所有 item 列表调用: GET /rest/item
对于某个 item 信息调用: GET /rest/item/(\d+)
创建一个 item: POST /rest/item
更新一个 item: PUT /rest/item/(\d+)
删除一个 item: DELETE /rest/item/(\d+)

然后根据规划在主配置里注册路由:

'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
// REST routers
array('rest/list', 'pattern'=>'rest/item', 'verb'=>'GET'),
array('rest/view', 'pattern'=>'rest/item/', 'verb'=>'GET'),
array('rest/create', 'pattern'=>'rest/item', 'verb'=>'POST'),
array('rest/update', 'pattern'=>'rest/item/', 'verb'=>'PUT'),
array('rest/delete', 'pattern'=>'rest/item/', 'verb'=>'DELETE'),
),
),

这里需要吐槽一下官方文档,路由配置这块基本什么说明都没写,
比如rules数组中的配置数组,里的各种参数含义,
比如verb,利用这个参数就能好好的绑定路由,
不必再到controller里进行判断了。只有api参考里有些关于属性和方法的说明,
主要信息来源还得靠在 Google 中自行寻觅。
然后开始编写 REST 的 Controller,
安装 yii 框架的约定,我们建立 protected/controllers/RestController.php
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯