Перейти к содержимому

anaid

Регистрация: 01 сен 2009
Offline Активность: 13 дек 2019 11:54
-----

Мои темы

ExecuteScript при выполнении скрипта возникает ошибка, а при выполнени

13 декабря 2019 - 06:33

Есть портал, на котором осуществляется подписание и отправка документов (плагин крипто-про).

Для генерации тестовых данных нужно массово подписать N хэшей этих документов, для этого решила использовать ту же функцию signHash что используется при нажатии на кнопку в интерфейсе, т.о., получился такой скрипт:

console.log("Мой скрипт");
var cert = tscrypto.certificate.getBySn("7a6093565000ee80e911f10420fa3b3b");
console.log(cert);
var hashOrigin = "i2rMVgOspj/xeZZrGT1qvgMqSrfBHQ1XwFiZV/zkiqY=";
var hash = atob(hashOrigin).split('').map(function (c) {
    return ('00' + c.charCodeAt(0).toString(16)).slice(-2);
}).join('');
var res = tscrypto.signHash(cert.__zone_symbol__value, hash, 100);
console.log(hashOrigin);
console.log(hash);
return res.__zone_symbol__value.toString();

и вот он вызывается          

            var PayLoad = chrome.ExecuteScript(js_script);
 
В результате выполнения в консоли браузера я вижу ошибку функции signHash
Unhandled Promise rejection: Параметр задан неверно. (0x80070057) ; Zone: <root> ; Task: Promise.then ; Value: Параметр задан неверно. (0x80070057) undefined . Если выполнить все команды в этом же браузере , то все отлично отрабатывает.  Вывела все параметры скрипта рис3, и сравнила, с теми которые передаются при нажатии на кнопку рис4. все верно. 
 
Как это победить или в какую сторону копать?