angular переменная ошибка ноль - PullRequest
0 голосов
/ 11 апреля 2020

это приложение ioni c использует сканер штрих-кода / ngx для сканирования qr, которые содержат некоторые данные, подобные этим:

U2FsdGVkX18ZiW2uS4siFkyhfNNTONWKRZZ1O5PYI6CUqKcLJdv//7VxPVkwpV0L
rRz7javcch77rsCA5hcaJUNle1lxVRb3mWMHyogWpTLXdV6Oq10hstzcznwqHm4+
kgDZVXm/e6FX7JofiHH58gLVvYGSpNbCgSDcHzGzmqM+zye9QYFbLD8381zl3z88
b9p3MwwhjJZo6olXIMazcAkndbyAdgzfXJlGvs5whLeMgWtluSNnNKWkY26BfMwT
uLxvQQgzr8VjfjQ21a8cHXJEu2qrbuu0y2JkzxWvIwFLw9XjRFHn/rOlD+q1fSuO

, который является выходом шифрования aes

после его сканирует qr он использует Crypto JS для расшифровки qrdata

с помощью кода, подобного этому

 CryptoJS.AES.decrypt(qrdata, this.secretKey.trim()).toString(CryptoJS.enc.Utf8);

, но я получил эту ошибку, в то время как decr

Error: Malformed UTF-8 data

я использую эта справка: Почему я получаю ошибку данных Malformed UTF-8 на crypto- js?

, но после дешифрования окончательный код возвращает ноль или пуст, я проверяю вывод сканирования qrcode, все в порядке

scanCode()
{

    this.barcodeScanner.scan().then(barcodeData => {

 this.scannedCode=barcodeData.text;

 if (this.scannedCode!="" || this.scannedCode!=null)
 {

  const str = this.scannedCode;
  const info2 = crypto.AES.decrypt(str, 'secretKey').toString(crypto.enc.Utf8);
 this.dec=({ info2 });
alert("start");
    alert(this.scannedCode); ///it is ok
    alert(this.dec.info2);  // alert empty
.................
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...