uniapp使用jsencrypt加密中的坑

uniapp 484 2019-03-08 03:00

 

注意:我这个时候npmjsencrypt的版本是3.0.0,其他版本在看完本文之后无效请另寻他法或者通过 cnpm i jsencrypt@3.0.0 --save 命令进行安装。
接着依然报错了,我表面笑嘻嘻着表示继续看下,心里当时就[bi][bi][bi]了。
一星期过去了,尝试过各种奇葩的操作,有看到一个rsa.js的让我觉得那是可以用的,不过找不到官方文档,涉及加密的东西也不敢用,或者我坐井观天了,最后昨天同事给我看了篇文章,说是这个插件使用了 window 对象,然后不管是小程序还是app中都没有窗口对象的环境,就导致不能用 window,一用这脚本就会报错,当然里面也提供了方法,以下给出相关代码并提供原文链接(侵删),要注意的是代码插入具体位置根据原文说法在使用严格模式'use strict';下一行插入:

 

// 用来替换 navigator
  var navigator2 = {
    appName: 'Netscape',
    userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1'
  };
  //  用来替换window
  var window2 = {
    ASN1: null,
    Base64: null,
    Hex: null,
    crypto: null,
    href: null
  };
//然后请将文中出现的window替换成window2,以及将navigator替换成navigator2

 

 



 

文章评论