下载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