Yii2框架之旅(七)
Yii2 RESTful API认证
调用接口时不需要你每次都输入账号密码进行验证,而是通过你的账号密码换取一个access_token,这样每次调用接口的时候验证access_token就行了。
1.将之前的AdminLoginForm复制到api的models中并且改名为ApiLoginForm,我们继续使用AdminUser作为api的认证类,调用接口用不到session和cookie,所以要在main配置文件中将其注释掉。

2.在AdminUser类中添加一个获取access_token的方法,如果你的admin_user表中没有access_token字段你需要添加此字段。

3.在ApiLoginForm中重写login()方法:

4.在api中创建AdminUserController

5.配置控制器Url规则:

6.测试一下看看:


数据库中:

7.在AdminUser类中重写findIdentityByAccessToken()方法:

8.在你需要访问的api接口控制器中重写behaviors()方法:

9.如此你访问接口时就需要access_token进行验证了:


加上刚刚生成的access_token试试:

大功告成:

预知Yii2框架中如何使用redis,请听下回分解。

浙公网安备 33010602011771号