7.2.1. Архитектура JC-WebClient
USB-токены и смарт-карты JaCartaAPI и SDKUSB-токены и смарт-карты JaCarta
JC-WebClient представляет из себя приложение на основе технологии локального Web-сервера, которое работает на стороне клиента. Приложение:
- принимает локальные HTTPS-запросы от браузера;
- на основе этих запросов отправляет команды токену/смарт-карте, либо выполняет программные функции;
- возвращает результат работы в браузер.
JC-WebClient поддерживает:
- все популярные платформы: Microsoft Windows, macOS, Linux;
- все популярные браузеры: Google Chrome, Opera, Mozilla Firefox, Яндекс.Браузер, Apple Safari, Microsoft IE, Microsoft Edge, Спутник.
Архитектура JC-WebClient приведена на рисунке ниже:

Основные компоненты JC-WebClient:
- Локальный Web-сервер
- обеспечивает взаимодействие между Web-страницей и токеном/смарт-картой по протоколу HTTPS;
- обеспечивает разделение PC/SC контекстов для различных вкладок браузера.
- Клиентский скрипт JCWebClient.js
- предоставляет Web-страницам JavaScript API для работы с командами и методами JC-WebClient;
- загружается на Web-страницу с локального Web-сервера;
- при вызове из контекста страницы Web-приложения команд или методов объектов, реализованных в файле JCWebClient.js, управление передаётся на локальный Web-сервер и далее к токену.
- Сервис мониторинга, выполненный в виде службы ОС
- запускает локальный Web-сервер при загрузке ОС;
- контролирует целостность локального Web-сервера;
- перезапускает локальный Web-сервер в случае нештатных ситуаций/сбоев в ОС.

