1. ホーム
  2. javascript

[解決済み] JavaScript - ReferenceError: WebSocket は定義されていません。

2022-02-18 16:28:27

質問

クライアント側の API のみに焦点を当てると (サーバー側の言語はそれぞれ独自の API を持つため)、次のスニペットは、WebSocket を使用して接続を開き、接続、切断、メッセージ イベント用のイベント リスナーを作成し、サーバーにメッセージを返送して、接続を閉じます。

// Create a socket instance
var socket = new WebSocket('ws://localhost:3000');

// Open the socket
socket.onopen = function(event) {

    // Send an initial message
    socket.send('I am the client and I\'m listening!');

    // Listen for messages
    socket.onmessage = function(event) {
        console.log('Client received a message',event);
    };

    // Listen for socket closes
    socket.onclose = function(event) {
        console.log('Client notified socket has closed',event);
    };

    // To close the socket....
    socket.close()

};

しかし、上記のスニペットを実行すると、エラーが発生します。

ReferenceError: WebSocket は定義されていません。

など、様々なリンクを渡り歩きましたが https://davidwalsh.name/websocket WebSocketを実装する方法についてです。しかし、そのどれもが npm パッケージ .

質問です。 では、WebSocketの実装(クライアント側のAngularJS)はどうすればいいのでしょうか?何が足りないのでしょうか?

どのように解決するのですか?

ご質問の中で参照されているコードは、クライアントサイドのコードです。 WebSocketはブラウザで直接利用できます。

Node.jsのサーバーサイドのコードについては ws NPM パッケージ .

では、NodeJSでWebSocket(クライアント側)を実装するにはどうしたらいいのでしょうか?

それはないでしょう。 Node.jsはサーバーサイドであって、クライアントサイドではない。