Для активации объектов КриптоПро ЭЦП Browser plug-in следует подключить к странице файл cadesplugin_api.js:
<script language="javascript" src="cadesplugin_api.js"></script>
Скрипт cadesplugin_api.js добавляет в window обьект cadesplugin. В браузерах которые поддерживают работу с обьектами Promise, cadesplugin имеет тип Promise. По окончанию загрузки плагина в браузер состояние обьекта будет изменено в resolved. При возникновении ошибок при загрузке плагина обьект cadesplugin перейдет в состояние rejected. В браузерах, которые не поддерживают работу с типом Promise, необходимо дождаться сообщения с строкой "plugin_loaded" или "plugin_loaded_error".
Пример создания объектов КриптоПро ЭЦП Browser plug-in:
// Создание объектов КриптоПро ЭЦП Browser plug-in
var oStore = cadesplugin.CreateObject("CAdESCOM.Store");
var oSigner = cadesplugin.CreateObject("CAdESCOM.CPSigner");
var oPrivateKey = cadesplugin.CreateObject("X509Enrollment.CX509PrivateKey");
Пример кода страницы для работы с плагином:
var canPromise = !!window.Promise;
if(canPromise) {
cadesplugin.then(function () {
// прикладной код
},
function(error) {
// сообщение об ошибке
}
);
} else {
window.addEventListener("message", function (event){
if (event.data == "cadesplugin_loaded") {
// прикладной код
} else if(event.data == "cadesplugin_load_error") {
// сообщение об ошибке
}
},
false);
window.postMessage("cadesplugin_echo_request", "*");
}
Подробное описание методов и свойств обьекта cadesplugin доступно на странице описания обьекта cadesplugin. Для пробной работы с КриптоПро ЭЦП Browser plug-in доступна демо-страница.
var canAsync = !!cadesplugin.CreateObjectAsync;
if(canAsync)
{
cadesplugin.async_spawn(function *(args) {
var oSignedData = yield cadesplugin.CreateObjectAsync("CAdESCOM.CadesSignedData");
var dataToSign = "dataToSign";
yield oSignedData.propset_Content(dataToSign);
});
}else
{
var oSignedData = cadesplugin.CreateObject("CAdESCOM.CadesSignedData");
var dataToSign = "dataToSign";
oSignedData.Content = dataToSign;
}
![]() Замечание
|
|---|
|
Использование Microsoft CertEnroll в Internet Explorer разрешено только на сайтах со схемой доступа https или включенных в зону безопасности Internet Explorer, в которой разрешено выполнение небезопасных ActiveX. |
