オブジェクト組み込みオブジェクト

ObjectSocket

ネットワーク ソケット オブジェクト

ソケットの所属netモジュール、メソッドの作成

1
var s = new net.Socket();

相続関係

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<class>Stream|fd|read();write();flush();close();copyTo()] [<this>Socket|new Socket()|family;remoteAddress;remotePort;localAddress;localPort;timeout|connect();bind();listen();accept();recv();send()] [object] <:- [Stream] [Stream] <:- [Socket] Socket new Socket() family remoteAddress remotePort localAddress localPort timeout connect() bind() listen() accept() recv() send() Stream fd read() write() flush() close() copyTo() object toString() toJSON()

コンストラクタ

Socket

新しい Socket オブジェクトを作成する Socket コンストラクター

1
new Socket(Integer family = net.AF_INET);

呼び出しパラメーター:

  • family: 整数、アドレス セットを指定します。デフォルトは AF_INET、ipv4 です。

メンバー プロパティ

family

整数、現在の Socket オブジェクトのアドレス セットを照会します

1
readonly Integer Socket.family;

remoteAddress

文字列、現在接続されているピアのアドレスを問い合わせる

1
readonly String Socket.remoteAddress;

remotePort

整数、現在接続されているピア ポートを照会します

1
readonly Integer Socket.remotePort;

localAddress

文字列、現在の接続のローカル アドレスを照会します

1
readonly String Socket.localAddress;

localPort

整数、現在の接続のローカル ポートを照会します

1
readonly Integer Socket.localPort;

timeout

ミリ秒単位の整数、クエリ、および設定タイムアウト

1
Integer Socket.timeout;

fd

整数、クエリStreamサブクラスによって実装される、対応するファイル記述子の値

1
readonly Integer Socket.fd;

メンバー関数

connect

TCP接続を確立する

1 2
Socket.connect(String host, Integer port = 0) async;

呼び出しパラメーター:

  • host: 文字列、相手のアドレスまたはホスト名を指定し、UNIX ソケットおよび Windows パイプのパスを指すこともできます
  • port: 整数、反対のポートを指定します。UNIX ソケットと Windows パイプを接続する場合、このパラメータは無視されます

bind

現在のソケットをすべてのローカル アドレスの指定されたポートにバインドします

1 2
Socket.bind(Integer port, Boolean allowIPv4 = true);

呼び出しパラメーター:

  • port: 整数、バインド先のポートを指定
  • allowIPv4: ブール値。ipv4 接続を受け入れるかどうかを指定します。デフォルトは true です。このパラメーターは ipv6 で有効であり、オペレーティング システムによって異なります。

現在のソケットを指定されたアドレスの指定されたポートにバインドします

1 2 3
Socket.bind(String addr, Integer port = 0, Boolean allowIPv4 = true);

呼び出しパラメーター:

  • addr: 文字列。バインディング アドレスを指定します。また、UNIX ソケットおよび Windows パイプ パスを指すこともできます。
  • port: 整数。バインドするポートを指定します。このパラメーターは、UNIX ソケットと Windows パイプをバインドする場合は無視されます。
  • allowIPv4: ブール値。ipv4 接続を受け入れるかどうかを指定します。デフォルトは true です。このパラメーターは ipv6 で有効であり、オペレーティング システムによって異なります。

listen

接続要求のリッスンを開始する

1
Socket.listen(Integer backlog = 120);

呼び出しパラメーター:

  • backlog: 整数。リクエスト キューの長さを指定します。それを超えるリクエストは拒否されます。デフォルトは 120 です。

accept

接続を待って受け入れる

1
Socket Socket.accept() async;

返される結果:

  • Socket、受信した接続オブジェクトを返します

recv

コネクションから指定したサイズのデータ​​を読み込みます. read メソッドとは異なり, recv は必要なデータが読み込まれることを保証しません. データを読み込んだ直後に戻ります.

1
Buffer Socket.recv(Integer bytes = -1) async;

呼び出しパラメーター:

  • bytes: 整数、読み取るデータの量を指定、デフォルトでは任意のサイズのデータ​​を読み取る

返される結果:

  • Buffer、接続から読み取ったデータを返します

send

指定されたデータを接続に書き込みます。このメソッドは write メソッドと同等です

1
Socket.send(Buffer data) async;

呼び出しパラメーター:

  • data:Buffer、書き込むデータが与えられた場合

read

指定されたサイズのデータ​​をストリームから読み取る

1
Buffer Socket.read(Integer bytes = -1) async;

呼び出しパラメーター:

  • bytes: 整数、読み取るデータの量を指定します。デフォルトでは、ランダム サイズのデータ​​ ブロックを読み取ります。読み取られるデータのサイズは、デバイスによって異なります。

返される結果:

  • Buffer、ストリームから読み取ったデータを返します。読み取るデータがない場合、または接続が中断された場合は null を返します。

write

指定されたデータをストリームに書き込みます

1
Socket.write(Buffer data) async;

呼び出しパラメーター:

  • data:Buffer、書き込むデータが与えられた場合

flush

ファイル バッファの内容を物理デバイスに書き込む

1
Socket.flush() async;

close

現在のストリーム オブジェクトを閉じます

1
Socket.close() async;

copyTo

ストリーム データをターゲット ストリームにコピーする

1 2
Long Socket.copyTo(Stream stm, Long bytes = -1) async;

呼び出しパラメーター:

  • stm:Stream、ターゲット ストリーム オブジェクト
  • bytes: long、コピーされたバイト数

返される結果:

  • Long、コピーされたバイト数を返します

toString

オブジェクトの文字列表現を返します。通常は「[Native Object]」を返します。オブジェクトは独自の特性に従って再実装できます

1
String Socket.toString();

返される結果:

  • String、オブジェクトの文字列表現を返します

toJSON

オブジェクトの JSON 形式表現を返します。通常は、オブジェクトによって定義された読み取り可能なプロパティのセットを返します

1
Value Socket.toJSON(String key = "");

呼び出しパラメーター:

  • key:文字列、未使用

返される結果:

  • Value、シリアル化可能な JSON を含む値を返します