私たちの Web アプリケーションには、ローカル ネットワーク上のサーバーにデータを送信し、プリンターで何かを印刷するボタンがあります。
ここまでは簡単でした。ボタンはトークンを使用して AJAX POST 要求をトリガーしhttp://printerserver/print.php
、そのページは Web アプリケーションに接続してトークンを検証し、印刷するデータを取得してから印刷しました。
ただし、現在、Web アプリケーションを HTTPS 経由で配信しています (このために HTTP に戻りたくありません)。Chrome と Firefox の新しいバージョンは、HTTP アドレスにリクエストを送信しなくなりました。 CORS ヘッダーを確認するように要求します。
では、クロスプロトコル XHR の最新の代替手段は何ですか? Websocket も同じ問題に悩まされていますか? (Google 検索では、ここでの現在の状態が明らかになりませんでした。) TCP ソケットを既に使用できますか? アクションはべき等ではなく、プリロードとキャッシュに実際的な影響を与える可能性があるため、GET 要求にも切り替えたくありません。
プリンターサーバー上のアプリケーションはどのような方法でも変更できますが (NodeJS などに置き換えることができます)、ユーザーのブラウザーを変更することはできません (たとえば、プリンターサーバーの自己署名証明書を信頼するため)。