Мы изучаем перенос приложения .NET для толстого клиента в веб-приложение на основе HTML5, но зависание заключается в том, что мы взаимодействуем с различными USB/последовательными/совместно используемыми устройствами (принтеры чеков, принтеры отчетов, специальные архивные принтеры, sigpads, сканеры, веб-камеры и т. д.).
Есть ли какой-нибудь возможный способ заставить сайт HTML5 взаимодействовать с локальными USB/последовательными периферийными устройствами или с локальной службой (например, перейти на www.site.com/app и заставить его взаимодействовать с localhost:1234/api для запроса такие вещи, как подписи и отправлять такие вещи, как задания на печать)?
Другой вариант, о котором я думал, - это установить локальную настройку типа тонкого клиента, которая запрашивает элементы пользовательского интерфейса из API удаленного сервера, но имеет внутреннюю логику, чтобы знать, что делают периферийные устройства, и передает данные через API.
Наименее предпочтительным является попытка написать какой-то плагин для браузера, который связан с использованием java-апплета. Silverlight может работать, но я не исследовал его слишком много.
В идеале мы хотели бы сделать это, чтобы сделать наше приложение кроссплатформенным, и мы не уверены, что лучше всего подходит для нашей ситуации, или каков путь наименьшего сопротивления и т. д.