説明
chrome.sockets.tcpServer API を使用して、TCP 接続を使用するサーバー アプリケーションを作成します。この API は、以前に chrome.socket API にあった TCP 機能に代わるものです。
マニフェスト
型
AcceptErrorInfo
プロパティ
-
resultCode
数値
基盤となるネットワーク呼び出しから返された結果コード。
-
socketId
数値
サーバー ソケット識別子。
AcceptInfo
プロパティ
-
clientSocketId
数値
クライアント ソケット識別子。つまり、新しく確立された接続のソケット識別子。このソケット識別子は、
chrome.sockets.tcp名前空間の関数でのみ使用してください。クライアント ソケットは最初は一時停止状態であり、データの受信を開始するには、アプリケーションによって明示的に一時停止を解除する必要があります。 -
socketId
数値
サーバー ソケット識別子。
CreateInfo
プロパティ
-
socketId
数値
新しく作成されたサーバー ソケットの ID。この API で作成されたソケット ID は、非推奨の
[socket](../socket/)API など、他の API で作成されたソケット ID と互換性がありません。
SocketInfo
プロパティ
-
localAddress
文字列 省略可
ソケットがリッスンしている場合は、ローカル IPv4/6 アドレスが含まれます。
-
localPort
number 省略可
ソケットがリッスンしている場合は、ローカルポートが含まれます。
-
name
文字列 省略可
ソケットに関連付けられたアプリケーション定義の文字列。
-
一時停止
ブール値
リスニング ソケットでの接続リクエストが
onAcceptイベントを介してディスパッチされるか、リスニング キューのバックログにキューイングされるかを示すフラグ。setPausedをご覧ください。デフォルト値は「False」です。 -
永続
ブール値
アプリケーションのイベントページがアンロードされたときにソケットを開いたままにするかどうかを示すフラグ(
SocketProperties.persistentを参照)。デフォルト値は「false」です。 -
socketId
数値
ソケット識別子。
SocketProperties
プロパティ
-
name
文字列 省略可
ソケットに関連付けられたアプリケーション定義の文字列。
-
永続
boolean 省略可
アプリケーションのイベントページがアンロードされたときにソケットを開いたままにするかどうかを示すフラグ(アプリのライフサイクルを管理するを参照)。デフォルト値は「false」です。アプリケーションが読み込まれると、persistent=true で以前に開かれたソケットを
getSocketsで取得できます。
メソッド
close()
chrome.sockets.tcpServer.close(
socketId: number,
callback?: function,
): Promise<void>
ソケットを切断して破棄します。作成したソケットは、使用後に閉じる必要があります。関数が呼び出されるとすぐに、ソケット ID は無効になります。ただし、ソケットが閉じられることが保証されるのは、コールバックが呼び出されたときのみです。
パラメータ
-
socketId
数値
ソケット識別子。
-
callback
function 省略可
callbackパラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 121 以降Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
TCP サーバー ソケットを作成します。
パラメータ
-
プロパティ
SocketProperties 省略可
ソケットのプロパティ(省略可)。
-
callback
function 省略可
callbackパラメータは次のようになります。(createInfo: CreateInfo) => void
-
createInfo
ソケット作成の結果。
-
戻り値
-
Promise<CreateInfo>
Chrome 121 以降Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
): Promise<void>
リスニング ソケットを切断します。つまり、新しい接続の受け入れを停止し、ソケットがバインドされているアドレス / ポートを解放します。ソケット識別子は有効なままです。たとえば、listen で使用して、新しいポートとアドレスで接続を受け入れることができます。
パラメータ
-
socketId
数値
ソケット識別子。
-
callback
function 省略可
callbackパラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 121 以降Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。
getInfo()
chrome.sockets.tcpServer.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
指定されたソケットの状態を取得します。
パラメータ
-
socketId
数値
ソケット識別子。
-
callback
function 省略可
callbackパラメータは次のようになります。(socketInfo: SocketInfo) => void
-
socketInfo
ソケット情報を含むオブジェクト。
-
戻り値
-
Promise<SocketInfo>
Chrome 121 以降Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。
getSockets()
chrome.sockets.tcpServer.getSockets(
callback?: function,
): Promise<SocketInfo[]>
アプリケーションが所有する、現在開いているソケットのリストを取得します。
パラメータ
-
callback
function 省略可
callbackパラメータは次のようになります。(socketInfos: SocketInfo[]) => void
-
socketInfos
ソケット情報を含むオブジェクトの配列。
-
戻り値
-
Promise<SocketInfo[]>
Chrome 121 以降Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。
listen()
chrome.sockets.tcpServer.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
): void
指定されたポートとアドレスで接続をリッスンします。ポート / アドレスが使用中の場合、コールバックは失敗を示します。
パラメータ
-
socketId
数値
ソケット識別子。
-
住所
文字列
ローカルマシンのアドレス。
-
ポート
数値
ローカルマシンのポート。
0に設定すると、空きポートが動的に選択されます。動的に割り当てられたポートは、getInfoを呼び出すことで確認できます。 -
バックログ
number 省略可
ソケットのリスンキューの長さ。デフォルト値はオペレーティング システム(SOMAXCONN)によって異なります。これにより、ほとんどのアプリケーションで適切なキューの長さが確保されます。
-
callback
関数
callbackパラメータは次のようになります。(result: number) => void
-
件の結果
数値
基盤となるネットワーク呼び出しから返された結果コード。負の値はエラーを示します。
-
setPaused()
chrome.sockets.tcpServer.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
リスニング ソケットが新しい接続を受け入れるかどうかを有効または無効にします。一時停止すると、リスニング ソケットはバックログ(listen 関数を参照)がいっぱいになるまで新しい接続を受け入れ、その後は追加の接続リクエストを拒否します。onAccept イベントは、ソケットが一時停止されていない場合にのみ発生します。
パラメータ
-
socketId
数値
-
一時停止
ブール値
-
callback
function 省略可
callbackパラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 121 以降Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。
update()
chrome.sockets.tcpServer.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
ソケットのプロパティを更新します。
パラメータ
-
socketId
数値
ソケット識別子。
-
プロパティ
更新するプロパティ。
-
callback
function 省略可
callbackパラメータは次のようになります。() => void
戻り値
-
Promise<void>
Chrome 121 以降Promise は Manifest V3 以降でのみサポートされています。他のプラットフォームではコールバックを使用する必要があります。
イベント
onAccept
chrome.sockets.tcpServer.onAccept.addListener(
callback: function,
)
サーバー ソケットへの接続が確立されたときに発生するイベント。
パラメータ
-
callback
関数
callbackパラメータは次のようになります。(info: AcceptInfo) => void
-
情報
-
onAcceptError
chrome.sockets.tcpServer.onAcceptError.addListener(
callback: function,
)
ランタイムがソケット アドレスとポートで新しい接続を待機しているときにネットワーク エラーが発生した場合に発生するイベント。このイベントが発生すると、ソケットは paused に設定され、ソケットが再開されるまで、このソケットに対して onAccept イベントは発生しません。
パラメータ
-
callback
関数
callbackパラメータは次のようになります。(info: AcceptErrorInfo) => void