OpenPGP.min.js не генерирует пару ключей

Со вчерашнего дня я пытаюсь заставить openpgp.js работать. Я попробовал полную версию, но безуспешно, поэтому сейчас я попробовал минимальную версию, но все равно безуспешно. У меня есть следующий HTML-код:

<html>
  <head>
    <meta charset="utf-8">
    <title>OpenPGPJS Unit Tests</title>
    <script src="openpgp.min.js"></script>
</head>
<body>
<script>
my_user_id = "John Test <john_test@someserver.com>";
my_passphrase = "123qwe";
my_key = openpgp.generateKeyPair({numBits: 1024, userId: my_user_id, passphrase:    
my_passphrase});

// My Private Key String
console.log("My private key:\n\n" + my_key.privateKeyArmored + "\n\n");

// My Public Key String
console.log("My public key:\n\n" + my_key.publicKeyArmored + "\n\n");
</script>
</body>
</html>

Но в консоли моего Chrome я получаю только:

My private key:

undefined


poc.html:17 My public key:

undefined

Почему это не определено?

1 ответ

Решение

Библиотека использует обещания. Чтобы получить сгенерированные ключи, вы должны будете использовать .then() метод возвращаемого обещания:

var my_user_id = "John Test <john_test@someserver.com>";
var my_passphrase = "123qwe";
var my_key = openpgp
                .generateKeyPair({numBits: 1024, userId: my_user_id, passphrase: my_passphrase})
                .then(function(keyPair) {
                    console.log("privateKeyArmored: " + keyPair.privateKeyArmored);
                });
Другие вопросы по тегам