模組net
網路存取模組
基礎模組。可用於建立和操作網路資源,引用方式:
1var net = require('net');
物件
Socket
1Socket net.Socket;
Smtp
1Smtp net.Smtp;
TcpServer
1TcpServer net.TcpServer;
Url
1UrlObject net.Url;
靜態函數
info
查詢目前運行環境網路信息
1static Object net.info();
回傳結果:
- Object, 返回網卡訊息
resolve
查詢給定的主機名稱的位址
1
2static String net.resolve(String name,
Integer family = AF_INET) async;
呼叫參數:
- name: String, 指定主機名
- family: Integer, 指定查詢回傳類型,預設為AF_INET
回傳結果:
- String, 傳回查詢的ip 字串
ip
快速查詢的主機位址,等效與resolve(name)
1static String net.ip(String name) async;
呼叫參數:
- name: String, 指定主機名
回傳結果:
- String, 傳回查詢的ip 字串
ipv6
快速查詢的主機ipv6 位址,等效與resolve(name,net.AF_INET6)
1static String net.ipv6(String name) async;
呼叫參數:
- name: String, 指定主機名
回傳結果:
- String, 傳回查詢的ipv6 字串
connect
1
2static Stream net.connect(String url,
Integer timeout = 0) async;
呼叫參數:
- url: String, 指定連線的協議,可以是:tcp://host:port 或者ssl://host:port,也可以是:unix:/usr/local/proc1 或pipe://./pipe/proc1,連接pipe 時需要用
/
替換\
- timeout: Integer, 指定超時時間,單位是毫秒,預設為 0
回傳結果:
openSmtp
1
2static Smtp net.openSmtp(String url,
Integer timeout = 0) async;
呼叫參數:
- url: String, 指定連線的協議,可以是:tcp://host:port 或者ssl://host:port
- timeout: Integer, 指定超時時間,單位是毫秒,預設為 0
回傳結果:
backend
查詢目前系統非同步網路引擎
1static String net.backend();
回傳結果:
- String, 返回網路引擎名稱
isIP
檢測輸入是否為IP 位址
1static Integer net.isIP(String ip = "");
呼叫參數:
- ip: String, 指定要偵測的字串
回傳結果:
- Integer, 非合法的IP 位址,回傳0, 如果是IPv4 則回傳4,如果是IPv6 則回傳 6
isIPv4
檢測輸入是否為IPv4 位址
1static Boolean net.isIPv4(String ip = "");
呼叫參數:
- ip: String, 指定要偵測的字串
回傳結果:
- Boolean, 如果是IPv4 則回傳true.否則回傳false
isIPv6
檢測輸入是否為IPv6 位址
1static Boolean net.isIPv6(String ip = "");
呼叫參數:
- ip: String, 指定要偵測的字串
回傳結果:
- Boolean, 如果是IPv6 則回傳true.否則回傳false
靜態屬性
use_uv_socket
Boolean, 查詢與設定socket 後端是否使用uv,預設為false
1static Boolean net.use_uv_socket;
常量
AF_UNIX
位址集常數,指定unix socket
1const net.AF_UNIX = 1;
AF_PIPE
位址集常數,指定Windows pipe
1const net.AF_PIPE = 1;
AF_INET
位址集常數,指定ipv4
1const net.AF_INET = 2;
AF_INET6
位址集常數,指定ipv6
1const net.AF_INET6 = 10;