Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript wp8上的openpgp.js错误_Javascript_Cordova_Windows Phone 8_Openpgp_Openpgp.js - Fatal编程技术网

Javascript wp8上的openpgp.js错误

Javascript wp8上的openpgp.js错误,javascript,cordova,windows-phone-8,openpgp,openpgp.js,Javascript,Cordova,Windows Phone 8,Openpgp,Openpgp.js,我正在我的应用程序中使用一个库,它是用ApacheCordova创建的 以下是代码的一部分: var publicKey = openpgp.key.readArmored(_publicKey); openpgp.encryptMessage(publicKey.keys, text).then(function (pgpMessage) { // success callback(pgpMessage);

我正在我的应用程序中使用一个库,它是用ApacheCordova创建的

以下是代码的一部分:

        var publicKey = openpgp.key.readArmored(_publicKey);
        openpgp.encryptMessage(publicKey.keys, text).then(function (pgpMessage) {
            // success
            callback(pgpMessage);
        }).catch(function (error) {
            // failure
            console.error(error);
        });
它可以正常工作,但不适用于WP8。如果失败,则会导致openpgp变量未定义。在该库源代码中,一开始就有这样的代码:

!function (e) {
"object" == typeof exports ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : "undefined" != typeof window ? window.openpgp = e() : "undefined" != typeof global ? global.openpgp = e() : "undefined" != typeof self && (self.openpgp = e())
}

所以应该定义openpgp。我怎样才能让它工作

更新
我添加了var openpgp=window.openpgp;错误消失了。现在it joust无法对消息进行加密,而且很难调试,因为库代码已经缩小了

所以,对于任何带着同样问题来到这里的人来说

使用var openpgp=window.openpgp;避免未定义的错误。 下一个问题是getRandomValues函数内部-存在一个异常,没有安全的随机数生成器可用。。为了避免这个错误,我把最后一个with exception语句改为 var sjcl=window.sjcl; 如果sjcl.random.isReady{ var buf=新的Uint8Array1; 字节=sjcl.random.randomWordsbuf.length; buf.setbytes; }否则{ var字节=[]; 对于变量i=0;i 希望它能帮助别人=