C++ で websocket を構築しました (boost::beast を使用)。要求された場合、JSON 文字列を使用して Web サイト (クライアント) にサービスを提供します。セットアップを設計するとき、私は悲惨な間違いを犯しました: クライアント Web ブラウザー (サーバーとは別のデバイスで実行されている) がサーバーの IP アドレスを認識しないことを忘れていました。サーバーがリッスンしているポートを認識します。
指定する必要があります: 両方 (サーバーとクライアント) がローカル ネットワークで実行されています。
したがって、これを解決するための2つの不器用なアイデアがあります。ご意見をお聞かせいただければ幸いです。問題を解決するためのよりエレガントな方法があると確信しています。
ある種のブロードキャスト メッセージ「特定の文字列」をネットワークに送信します。私のサーバーは、それが検索されたことを認識し、IP で応答するため、接続を確立できます。 この投稿は、このアプローチが不可能であることを示しているようです。
サーバーを実行しているデバイスの (既知の) IP アドレスをユーザーに入力してもらいます。この最後の手段は避けたいと思います。
残念ながら、websocket サーバーをホストしているデバイスで node.js を実行できません。