Здравствуйте, modelware, Вы писали:
M>Похоже это действительно единственный вариант.
M>Сайт на https. Распишите проблемы. Буду благодарен. Может через личку?
Проблема следующая. Если сайт на HTTPS, то многие (все?) браузеры не дадут установить незащищённое WebSocket-соединение. Т.е. WebSocket-соединение тоже должно защищено через HTTPS-соединение. Значит ваш локальный веб-сервер на 127.0.0.1 должен принимать HTTPS-соединения. И, конечно, показывать браузеру сертификат, которому браузер будет доверять. Есть два способа сделать такой сертификат: либо сгенерировать самоподписанный сертификат для IP-адреса 127.0.0.1 и установить этот сертификат как доверенный в браузер (надо сделать один раз, но процедура не совсем тривиальная для пользователя); либо создать поддомен localhost.mywebsite.com, получить на этот поддомен нормальный сертификат от любого удостоверяющего центра и прописать в DNS адрес 127.0.0.1 для этого поддомена. Соответственно вебсокет открывать на
wss://localhost.mywebsite.com:12345.
Второй вариант для пользователя самый простой (не нужно добавлять в браузер сертификат), но вам придётся распространять закрытый ключ вместе с вашим клиентским приложением. Это нарушение условий любого удостоверяющего центра и в теории ваш сертификат могут отозвать. На практике, конечно, вряд ли это случится.