首先
我们先在cocos编辑器中引入jsencrypt.min.js这个文件。(如图)
此时它会提示你“是否将当前载入的jsencrypt.min.js脚本设置为插件”,因为我们引入的js文件是第三方的插件,所以,我们选择是。(如图)
然后进行下一步(如图)
这时候,控制台会有这样的提示(如图)
我们打开jsencrypt.min.js这个文件,把第一行的 var JSEncryptExports 改为 window.JSEncryptExports (如图)
此时,我们就完成了“jsencrypt.min.js”这个外部插件脚本的引入。具体内容,请看官方文档
下一步
我创建了一个 Label 节点。并将该节点名字改为 public ,编辑 Label 组件的 string 属性,填入我们的公钥。并将该节点隐藏。(如图) 当然你也可以用其他方式,来让你在写脚本文件时获取到公钥的字符串。
接下来
我们将会把 得到加密后的内容 的逻辑放在 HelloWorld 脚本里,打开 HelloWorld 脚本开始编辑,首先在properties区块的最后添加我们刚刚添加的名为 public 的 Label 组件的引用属性:
//HelloWorld.js
properties: {
// ...
// public label 的引用
public: {
default: null,
type: cc.Label
}
},
保存 HelloWorld 脚本后,回到层级管理器,选中 Canvas 节点,然后把前面添加好的 public 节点拖拽到 属性检查器 里 HelloWorld 组件的 public 属性中。(如图)
然后,在 HelloWorld 脚本里添加名为 getJiaMi 的方法
//HelloWorld.js
getJiaMi: function () {
//我这里就随便写一个密码了
var passWord = "aaabbb";
//获取 public 里面的写好的公钥
var publicKey = this.public.string;
var encrypt = new JSEncrypt();
//放入你的公钥
encrypt.setPublicKey(publicKey);
//加密后的内容
var encryptData = encrypt.encrypt(passWord);
//打印出加密的内容
console.log(encryptData);
}
这样,获取加密后的内容 的方法就写好了。
然后,我直接在 onLoad 方法里调用刚添加的 getJiaMi 方法,onLoad方法会在场景加载后立刻执行,这样,在我刚进入场景的时候就会获得加密的内容了。
//HelloWorld.js
onLoad: function () {
this.getJiaMi();
}
保存。点击 Cocos Creator 编辑器上方正中的预览游戏按钮。打开浏览器的控制台,我们就会看到我们获得的加密后的内容啦!(如图)
第一次写文章,可能写的不太好,希望各位大神见谅( ̄▽ ̄)~*
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。