**前言:** 为了确保数据的安全性,我们在开发api时要考虑到数据的加密,Tplay Pro的API模块其数据采用了ase加密方式进行加密。 其实,作者已经将加密的基础工作做好了,开发者只需要在控制器中引入并继承Tplay Pro核心库就可以使用作者继承好的数据加密方法了。 ~~~ <?php namespace app\api\controller; use app\tplay\lib\TplayPro; class Base extends TplayPro { } ~~~ **便捷:** 其实在API模块,作者已经为开发者准备了两个公共的控制器去继承,他们分别是Base和Restrict,直接继承他们其中的任何一个就可以自由的使用加密方法和解密方法了,区别是继承Base是不验证登录状态的,而继承Restrict则增加了验证登录状态的功能。 此外,Base控制器还对客户端发给服务端的数据做了解密和验证操作,使用起来是非常方便的哈。 **数据加密:** ~~~ $this->setSign($data) ~~~ **数据解密** ~~~ $this->checkSign($param)//返回的是数组 ~~~ **给客户端返回加密数据** ~~~ return $this->show(1,'',$this->setSign($data)); ~~~ **解密客户端发给服务端的数据** ~~~ $this->checkSign($this->request->param()); ~~~ **客户端解密服务端返回的数据** 在安装包中或官方vip交流群群文件中找到ase.js,打开并配置app_key(要和服务器端的配置一致),引入这个js文件,调用decrypt()方法,将服务端返回的加密数据传入即可。 **客户端向服务器端发送加密数据** 在安装包中或官方vip交流群群文件中找到ase.js,打开并配置app_key(要和服务器端的配置一致),引入这个js文件,调用encrypt()方法,将要加密的数据传入即可得到加密的数据。 **注意:** 向服务端发送加密数据需要将所有加密数据放入名为sign的参数里。