YII2的restfulAPI开发入门(2)-第1个restfulAPI

1. ApiController.php

<?php

namespace app\controllers;

use yii\web\Response;

use yii\rest\ActiveController;

class ApiController extends ActiveController{

/**

* 将返回的数据设置成JSON格式

* {@inheritDoc}

* @see \yii\rest\Controller::behaviors()

*/

public function behaviors()

{

$behaviors=parent::behaviors();

$behaviors[‘contentNegotiator‘][‘formats‘][‘text/html‘] = Response::FORMAT_JSON;

return $behaviors;

}

/**

* 重置API基础内种的默认方法

* {@inheritDoc}

* @see \yii\rest\ActiveController::actions()

*/

public function actions(){

return [];

}

}

2. UserController.php

<?php

namespace app\controllers;

use yii;

use app\models\User;

use app\components\Utility;

class UserController extends ApiController{

/**

* 定义模型

*/

public $modelClass=‘app\models\User‘;

/**

* 过滤数据接收方式

* {@inheritDoc}

* @see \yii\rest\ActiveController::verbs()

*/

protected function verbs(){

return [

‘login‘=>[‘post‘],

‘checklogin‘=>[‘get‘,‘post‘],

];

}

/**

* 登录

*/

public function actionLogin(){

return [‘ok‘=>‘login‘];

}

/**

* 验证是否login

*/

public function actionChecklogin(){

Return [‘ok’=>’checklogin’];

}

}

3. Restful API测试工具PostMan的安装

现在chrome扩展只能从它的商店安装,但我发现这个商店被墙了,一直打不开。

方法:

⑴ 把附件的Postman_v3.0.17.crx修改后缀名成Postman_v3.0.17.rar

⑵ 解压缩rar,得到目录Postman_v3.0.17

⑶ 修改目录里的子目录_metadata成metadata

⑷ Chrome中,打开扩展界面chrome://extensions/

(4.1)选中右上角的 [] 开发者模式

(4.2)加载正在开发的扩展程序

OK,成功。

4. 在PostMan的URL里输入:

127.0.0.1/user/login或127.0.0.1/users/login,返回:‘ok‘=>‘login‘。因为在api_cfg.php里配置了:‘POST users/login‘ => ‘user/login‘,所以访问users/login会被重定向到user/login。

时间: 2024-10-26 08:24:12

YII2的restfulAPI开发入门(2)-第1个restfulAPI的相关文章

YII2的restfulAPI开发入门(1)-环境搭建

1. 准备工作 Web server: apache 或者 nginx Yii2版本: basic版本 数据库: mysql 2. 访问Yii2的web目录 ⑴ 测试Yii2环境 web/目录下创建info.php文件,文件代码为:echo phpinfo(); 输入 127.0.0.1/info.php后就能访问到 /web/info.php. 说明Yii2环境搭建成功. 3. 参数配置 ⑴ web.php (1.1) 'cookieValidationKey' => '2e268962384

YII2的restfulAPI开发入门(4)-几个问题

现在看我整理好的文档,一步步调试restful API,感觉非常简单,但当时在局中的我,确实碰到了不少麻烦事,而且网上也没标志的文档,都是自己网上找,自己实战,看源代码的方式折腾出来的.总体感觉,用Yii2写restful API还是蛮方便的. 1. 为了access-token参数能兼容nginx下的lua语言开发restful API,把access-token参数修改成accesstoken. 同时,Yii2.0框架下的: vendor/yiisoft/yii2/filters/auth/

YII2的restfulAPI开发入门(3)-账户验证和速率控制

1. 几个Controller之间关系的说明 ⑴ 不需要进行认证 ApiController UserController extends ApiController ⑵ 需要进行认证 AuthApiController extends ApiController AuthuserController extends AuthApiController 2. 只有安全认证过的api才可执行账户验证和速率控制. ⑴ AuthApiController.php <?php namespace app

史上最简单的个人移动APP开发入门--jQuery Mobile版跨平台APP开发

书是人类进步的阶梯. ——高尔基 习大大要求新新人类要有中国梦,鼓励大学生们一毕业就创业.那最好的创业途径是什么呢?就是APP.<构建跨平台APP-jQuery Mobile移动应用实战>就是一本写给没钱没身份没资历的创业小白看的APP书,看完这本书你可以拥有自己的一个APP,不用花钱就能移植到其他移动平台,支持iOS,Android,Windows Phone!!!!!!!!找个最便宜的来练手吧!  小白APP交流Q群:  348632872 清华大学出版社推出的<构建跨平台APP:j

[050] 微信公众平台开发入门视频教程已发布

2014年4月26日晚8点,我在CSDN社区在线培训课堂讲解了微信公众平台开发入门的相关知识,受到广大网友的一致好评,在此非常感谢大家的支持!课程结束后,很多网友表示由于报名人数限制.临时有事等原因,未能参加,希望能够提供录制视频的观看地址.视频教程的主要内容包括: 1.移动APP发展趋势(Native APP.Web APP.Light APP) 2.微信公众平台基础知识(服务号/订阅号.公众账号注册的注意事项.微信认证) 3.开发模式的使用(启用开发模式.接收与响应消息.回复文本/图文/音乐

ArcGIS API for Silverlight开发入门准备

原文:ArcGIS API for Silverlight开发入门准备 微软的Silverlight提供了跨浏览器和跨平台开发环境,在Web中可用于创建和展现富互联网应用(RIA,Rich Internet Application). ArcGIS API for Silverlight 能够让的Silverlight应用程序具有集成ArcGIS Server.ESRI MapIt和Bing Maps服务的能力.利用 ArcGIS Server 和Bing Maps资源,比如说Maps.Loca

JavaWeb学习总结(一)JavaWeb开发入门

静态网页和动态网页 静态网页:在服务器上没有经过服务器解释执行的网页. 动态网页:在服务器上经过服务器解释执行的网页. 无论是静态网页还是动态网页,客户端看到的网页都是由HTML所构成的,所以JavaWeb开发需要懂HTML. Servlet和Servlet容器 Servlet:是一些实现了特定接口的Java类的集合. Servlet容器是JSP/Servlet代码运行的地方,是管理JSP/Servlet的地方. 其实Servlet容器就是一个服务器软件,比如Tomcat. HTTP协议 浏览器

Android Wear 开发入门

大家好,我是陆嘉杰,我是一名Android开发者.我想和大家进行一些技术交流,希望越来越多的人能和我成为好朋友. 大家都知道,智能手表是下一个开发的风口,而这方面的技术又属于前沿,所以和大家分享下Android Wear的开发流程. 首先,我推荐大家使用Android Studio来进行Wear的开发,这也是谷歌推荐的,本次讲授过程也将以Android Studio作为开发集成环境进行. 下面我们来创建Android Wear项目. 请注意,Android Wear项目中同时包含mobile和w

UWP开发入门(一)——SplitView

接下来会写一个UWP(Universal Windows Platform)开发入门的系列,自己学习到哪里,有什么心得总结,就会写到哪里.本篇对适用于顶层导航的SplitView控件展开讨论. 首先SplitView是Win10 UWP新增的控件,以前虽然可以通过DockPanel模拟出类似的效果,但又哪里及得上M$原生支持的SplitView快捷方便呢. 至于为什么说SplitView适合顶层导航,可以参考目前尚为数不多的UWP APP,比如微博.QQ和网易等Win10 APP,基本都是通过S