解决jsencrypt在小程序中报错appName的问题

/**
 * 以下是解决jsencrypt在小程序中报错的bug 
 * 注解:源码中有用到navigator.appName和navigator.userAgent两个字段,
 * 对于appName主要用与判断浏览器选择不同的大数处理方式,
 * 这里我们可以考虑直接删除其他代码选择am3,
 * 或者构造一个navigator.appName = 'Netscape';
 * 对于userAgent主要用于IE11之前的浏览器做兼容处理,对此我们也可以直接给userAgent赋值来绕过。
 */

// 可以直接从浏览器中取值
var navigator = {
     
	appName: 'Netscape',
	userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1'
};

/**
 * 源码中中使用到window对象的地方主要是在有crypto属性时做rng_pool的初始化,以及mousemove的事件监听,
 * 这里没有添加事件并没不会影响到加密,所以直接给一个空的window对象也是可以的。
 */

// 用到的window属性基本是用于判断是否使用window对象提供的方法,只要相关代码不报错就好了。
var window = {
     
	crypto: null,
};
/**
 * 注意标点符号一定要加,不然会报错
 * 以上是解决jsencrypt在小程序中报错的bug end
 */

你可能感兴趣的:(小程序,小程序)