Альтернатива NPAPI для редактирования файлов в реальном времени
В настоящее время у меня есть веб-приложение, которое позволяет пользователям загружать файлы на свои компьютеры, редактировать их с помощью своих собственных редакторов и автоматически отправляет их обратно на сервер после сохранения, а также при отправке некоторых дополнительных данных при закрытии файла. Он использует Java-апплет для обработки обработки на стороне клиента, которая включает
- скачать файл,
- отправив запрос на блокировку файла,
- открытие файла в настольном приложении по умолчанию,
- следя за изменениями,
- загрузка файла обратно на сервер,
- отправка запроса на разблокировку файла при закрытии.
Поскольку Chrome перестанет поддерживать NPAPI в сентябре, мне нужно создать альтернативу при сохранении функциональности. Я не смог найти много альтернатив. Единственное, что я обнаружил, что смогло бы достичь хотя бы чего-то - это Native Messaging, но все же я не представляю, как я мог бы использовать его для эмуляции поведения Java-апплета.
Таким образом, вопрос - какие возможные альтернативы я могу использовать, чтобы заменить апплет?
1 ответ
Глядя на ваши комментарии, я собираюсь разбить ваш вопрос на 2 основных вопроса:
- Как работает нативный обмен сообщениями?
- Как загрузить файл и запустить его в приложении и т. Д. В приложении Windows?
Собственный обмен сообщениями по сути позволяет запускать приложение (которое должно быть зарегистрировано при установке, чтобы оно могло работать таким образом), которое может взаимодействовать с вашим расширением. После этого вы можете общаться с вашим родным приложением для обмена сообщениями со своего внутреннего номера (или с веб-страницы, передавающей запросы через ваше внутреннее расширение); Ваши сообщения должны быть в основном отформатированы в json (на стороне javascript вы предоставляете кодируемые значения json, а на исполняемой стороне вы должны прочитать это из stdin и проанализировать его, а затем записать в stdout результат; перед каждым сообщением также стоят 2-байтовые целые числа). с указанием длины сообщения).
в основном, когда у вас есть связь, вам просто нужно, чтобы ваше приложение могло отвечать на сообщение, в котором говорится, что он должен загрузить файл, и т. д. Это то, что вам придется выяснить, как это сделать - вы могли бы Сделайте это с помощью скрипта Python, Windows Exe, приложения.net или чего угодно, что может быть выполнено, но у каждого есть свои преимущества и недостатки.
надеюсь, это поможет