使用的是uniapp框架开发现正在进行vue2转vue3迁移,项目里使用了node-rsa插件在运行时报错Buffer is not defined。
import NodeRSA from 'node-rsa'
import { getCurrentInstance } from 'vue'
const app = getCurrentInstance()
export default class RsaUtil {
/**
* 手牌解密 使用公钥
*/
static decryptByPublicKey(data) {
const key = new NodeRSA(app.appContext.config.globalProperties.publicKey, 'pkcs8-public-pem')
let _data = key.decryptPublic(data, 'utf-8')
return _data
}
/**
* 手牌加密 使用公钥
*/
static encryptByPublicKey(data) {
const key = new NodeRSA(app.appContext.config.globalProperties.publicKey, 'pkcs8-public-pem', {
encryptionScheme: 'pkcs1'
})
let _data = key.encrypt(data, 'base64')
return _data;
}
}
当前支持维护protobuf,参考链接:https://gitee.com/openharmony-tpc/protobuf
HarmonyOS node-rsa兼容问题 --田甜 2024年9月5日11:25:39
参考链接使用jsencrypt:https://blog.csdn.net/zhimooo/article/details/120021177
注意把原框架里插件替换即可。