文档章节

YII2 rest 风格接口

风清扬-深圳
 风清扬-深圳
发布于 2015/12/21 11:52
字数 336
阅读 672
收藏 5

下载yii2rest程序,下载地址https://github.com/iiYii/yii2-rest-demo

打开命令行客户端,前提是php加入环境变量。

进入YII项目目录,windows下输入yii migrate初始化数据库。

初始化成功后,如图:

到此,就正常安装了YII2的rest测试数据库。配置很简单,请参考github上的教程!

配置好解析,本地访问:http://www.rest.dev/users

你应该会到这个样子:

<response>
<name>Unauthorized</name>
<message>You are requesting with an invalid credential.</message>
<code>0</code>
<status>401</status>
<type>yii\web\UnauthorizedHttpException</type>
</response>

分抛出一个没有经过http认证的异常,

这是forecho前辈加入了CompositeAuth验证,代码如下:

  public function behaviors()
    {
        $behaviors = parent::behaviors();
        $behaviors['authenticator'] = [
            'class' => CompositeAuth::className(),
            'authMethods' => [
                QueryParamAuth::className(),
            ],
        ];
        return $behaviors;
    }

隐藏即可得到结果,但是不建议隐藏;

当客户端第一次设备号注册的时候会传递一个设备号,或者会员注册成功返回一个授权号access_token,通过在URL地址加入access-token参数的方法对客户端请求进行合法性验证,如下:

postman下模拟post如下:

分页和速率限制截图如下:

速率限制,如程序级别的防止ddos攻击,10分钟内限制访问100次。

更多移动端接口安全校验可参考另一篇博文:http://my.oschina.net/chinahub/blog/546511

© 著作权归作者所有

共有 人打赏支持
风清扬-深圳
粉丝 11
博文 73
码字总数 19480
作品 0
深圳
高级程序员
yii2 restful 风格搭建(二)接口认证

做完了基本的 restful 搭建,就需要接口认证和定义返回码了 一、yii2 支持的 3种认证方式 1、HTTP 基本认证: yiifiltersauthHttpBasicAuth 支持两种认证方式,输入用户名和密码和只输入用户名...

botkenni
05/03
0
0
Yii2 使用 RESTful 写API接口 实例

Yii2使用RESTful?其实Yii2框架本身就对RESTful是友好支持的,具体可以看官方文档(http://www.yiichina.com/doc/guide/2.0/rest-quick-start),或者去看源码,都是可以的注意:我们使用resTf...

小田天
2016/11/19
28
0
技术积累笔记概要

2015年11月24日 1、rest 速率限制,写属于自己的方法。 2、actions方法深刻了解。 3、YII技术博客:http://blog.csdn.net/terrywater/article/category/2565815。 4、静态方法传递参数的习惯...

风清扬-深圳
2015/11/24
78
0
Yii2 基于RESTful架构的 advanced版API接口开发 配置、实现、测试

环境配置: 开启服务器伪静态 本处以apache为例,查看apache的conf目录下httpd.conf,找到下面的代码 LoadModule rewritemodule modules/modrewrite.so 将其前面的#去掉,如果没有找到则添加...

沧海野狼
2016/09/01
63
0
yii2 RESTful api的详细使用

作者:白狼 出处:http://www.manks.top/yii2_restful_api.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利...

白狼栈
2016/07/10
109
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

kernel version does not match DSO version

错误信息: kernel version 384.11 does not match DSO version 384.130.0 原因是: cuda driver版本太低,不匹配DSO 简单有效的修复方法,升级nvidia driver, 步骤如下: 1. google seach ...

刘小米
今天
0
0
maven坐标和依赖

一、maven坐标详解 <groupId>com.fgt.club</groupId><artifactId>club-common-service-facade</artifactId><version>3.0.0</version><packaging>jar</packaging> maven的坐标元素说......

老韭菜
今天
1
0
springmvc-servlet.xml配置表功能解释

问:<?xml version="1.0" encoding="UTF-8" ?> 答: xml version="1.0"表示是此xml文件的版本是1.0 encoding="UTF-8"表示此文件的编码方式是UTF-8 问:<!DOCTYPE beans PUBLIC "-//SPRING//......

隐士族隐逸
今天
1
0
基于TP5的微信的公众号获取登录用户信息

之前讲过微信的公众号自动登录的菜单配置,这次记录一下在TP5项目中获取自动登录的用户信息并存到数据库的操作 基本的流程为:微信设置自动登录的菜单—>访问的URL指定的函数里获取用户信息—...

月夜中徘徊
今天
0
0
youTrack

package jetbrains.teamsys.license.runtime; 计算lis package jetbrains.ring.license.reader; 验证lis 安装后先不要生成lis,要把相关文件进行替换 ring-license-checker-1.0.41.jar char......

max佩恩
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部