版本:Cocos 2.4.4
参考:
脚本之家:前端加密cryptojs与JSEncrypt使实例详解
目录
一 encryptjs简介
二 下载encryptjs
三 修改encryptjs
四 cocos中使用encryptjs
一 encryptjs简介
encryptjs是一个对字符串进行加密和解密的库。
cocos文档里提到了encryptjs进行数据加密,所以来试试。
二 下载encryptjs
打开命令窗口,输入 npm install encryptjs 下载encryptjs。
下载好后,复制encryptjs.js和algo.js两个文件到cocos项目下。
就复制到cocos项目assets/libs/下,不用勾选导入为插件。
三 修改encryptjs
entryptjs.js中注释掉引用readline和fs的代码,因为写明了Electron doesnt support....不支持,会报错,所以注释掉,反正加密和解密用不上。
四 在cocos中使用encryptjs
const { ccclass, property } = cc._decorator; declare let require: (string) => any; @ccclass export default class MainScene extends cc.Component { onLoad() { //引用encryptjs let encrypt = require('encryptjs'); // 加密密钥 let secretkey = 'abc'; //需要加密的数据 let data = { name: "peter", age: 18 }; let str = JSON.stringify(data); //加密 let encrypted = encrypt.encrypt(str, secretkey, 256); //解密 let decrypted = encrypt.decrypt(encrypted, secretkey, 256); let json = JSON.parse(decrypted); console.log("加密前:", data); //输出:{name: 'peter', age: 18} console.log("加密后:", encrypted); //输出:TgEaqCNrtmPgv5AJobANZOxcPeCgq/h/XQkYpEZPX+z2 console.log("解密后:", json); //输出:{name: 'peter', age: 18} } }
上面代码使用require会报错,因为typescript找不到require,但是运行时是存在require的,所以需要加一行声明即可。
declare let require: (string) => any;