本文へスキップ
バージョン: 4.x

クライアント初期化

Socket.IO クライアントライブラリをインストールしたら、クライアントを初期化できます。 オプションの完全なリストはこちらにあります。

ヒント

TypeScript ユーザーの場合、イベントに型ヒントを指定できます。こちらをご覧ください。

以下の例では、ioオブジェクトは次のいずれかから取得されます。

  • <script> インポート
<script src="/socket.io/socket.io.js"></script>
  • ESM インポート
<script type="module">
import { io } from "https://cdn.socket.io/4.7.5/socket.io.esm.min.js";
</script>
  • NPM
const { io } = require("socket.io-client");

同一ドメインからの接続

フロントエンドがサーバーと同じドメインで提供されている場合は、次のように使用できます。

const socket = io();

サーバーのURLは、window.locationオブジェクトから推測されます。

異なるドメインからの接続

フロントエンドがサーバーと同じドメインで提供されていない場合は、サーバーのURLを渡す必要があります。

const socket = io("https://server-domain.com");

その場合、サーバーでクロスオリジンリソース共有 (CORS)を有効にすることを確認してください。

情報

httpsまたはwss(それぞれhttpまたはws)を使用できます。

// the following forms are similar
const socket = io("https://server-domain.com");
const socket = io("wss://server-domain.com");
const socket = io("server-domain.com"); // only in the browser when the page is served over https (will not work in Node.js)

カスタム名前空間

上記の例では、クライアントはメイン名前空間に接続します。ほとんどのユースケースではメイン名前空間のみで十分ですが、名前空間を次のように指定できます。

// same origin version
const socket = io("/admin");
// cross origin version
const socket = io("https://server-domain.com/admin");

名前空間の詳細についてはこちらを参照してください。

オプション

使用可能なオプションの完全なリストはこちらにあります。