Deskripsi
Gunakan chrome.socket
API untuk mengirim dan menerima data melalui jaringan menggunakan koneksi TCP dan UDP. Catatan: Mulai Chrome 33, API ini tidak digunakan lagi dan digantikan oleh API sockets.udp
, sockets.tcp
, dan sockets.tcpServer
.
Izin
socket
Jenis
AcceptInfo
Properti
-
resultCode
angka
-
socketId
angka opsional
ID soket yang diterima.
CreateInfo
Properti
-
socketId
angka
ID soket yang baru dibuat.
CreateOptions
NetworkInterface
Properti
-
alamat
string
Alamat IPv4/6 yang tersedia.
-
nama
string
Nama dasar adaptor. Pada *nix, biasanya berupa "eth0", "lo", dll.
-
prefixLength
angka
Panjang awalan
ReadInfo
Properti
-
data
ArrayBuffer
-
resultCode
angka
resultCode yang ditampilkan dari panggilan read() yang mendasarinya.
RecvFromInfo
Properti
-
alamat
string
Alamat komputer jarak jauh.
-
data
ArrayBuffer
-
port
angka
-
resultCode
angka
resultCode yang ditampilkan dari panggilan recvfrom() yang mendasarinya.
SecureOptions
Properti
-
tlsVersion
TLSVersionConstraints opsional
SocketInfo
Properti
-
terhubung
boolean
Apakah soket yang mendasarinya terhubung atau tidak.
Untuk soket
tcp
, nilai ini akan tetap benar meskipun koneksi peer jarak jauh telah terputus. Membaca atau menulis ke soket dapat mengakibatkan error, yang mengisyaratkan bahwa soket ini harus diputus melaluidisconnect()
.Untuk soket
udp
, ini hanya menunjukkan apakah alamat jarak jauh default telah ditentukan untuk membaca dan menulis paket. -
localAddress
string opsional
Jika soket yang mendasarinya terikat atau terhubung, berisi alamat IPv4/6 lokalnya.
-
localPort
angka opsional
Jika soket yang mendasarinya terikat atau terhubung, berarti soket tersebut berisi port lokal.
-
peerAddress
string opsional
Jika soket yang mendasarinya terhubung, berisi alamat IPv4/6 peer.
-
peerPort
angka opsional
Jika soket yang mendasarinya terhubung, berisi port peer yang terhubung.
-
socketType
Jenis soket yang diteruskan. Nilainya adalah
tcp
atauudp
.
SocketType
Enum
"tcp"
"udp"
TLSVersionConstraints
Properti
-
maks
string opsional
-
mnt
string opsional
Versi TLS minimum dan maksimum yang dapat diterima. Nilai yang didukung adalah
tls1.2
atautls1.3
.Nilai
tls1
dantls1.1
tidak lagi didukung. Jikamin
ditetapkan ke salah satu nilai ini, nilai tersebut akan dibulatkan ketls1.2
secara otomatis. Jikamax
disetel ke salah satu nilai tersebut, atau nilai lain yang tidak dikenal, nilai tersebut akan diabaikan tanpa pemberitahuan.
WriteInfo
Properti
-
bytesWritten
angka
Jumlah byte yang dikirim, atau kode error negatif.
Metode
accept()
chrome.socket.accept(
socketId: number,
callback: function,
)
Metode ini hanya berlaku untuk soket TCP. Mendaftarkan fungsi callback untuk dipanggil saat koneksi diterima pada soket server yang memprosesnya ini. Dengarkan harus dipanggil terlebih dahulu. Jika sudah ada callback terima yang aktif, callback ini akan segera dipanggil dengan error sebagai resultCode.
Parameter
-
socketId
angka
SocketId.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(acceptInfo: AcceptInfo) => void
-
acceptInfo
-
bind()
chrome.socket.bind(
socketId: number,
address: string,
port: number,
callback: function,
)
Mengikat alamat lokal untuk soket. Saat ini, RC tidak mendukung soket TCP.
Parameter
-
socketId
angka
SocketId.
-
alamat
string
Alamat komputer lokal.
-
port
angka
Port komputer lokal.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
connect()
chrome.socket.connect(
socketId: number,
hostname: string,
port: number,
callback: function,
)
Menghubungkan soket ke mesin jarak jauh (untuk soket tcp
). Untuk soket udp
, ini menetapkan alamat default tempat paket dikirim dan dibaca untuk panggilan read()
dan write()
.
Parameter
-
socketId
angka
SocketId.
-
hostname
string
Nama host atau alamat IP mesin jarak jauh.
-
port
angka
Port komputer jarak jauh.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
create()
chrome.socket.create(
type: SocketType,
options?: CreateOptions,
callback?: function,
)
Membuat soket dari jenis yang ditentukan yang akan terhubung ke mesin jarak jauh yang ditentukan.
Parameter
-
jenis
Jenis soket yang akan dibuat. Harus
tcp
atauudp
. -
opsi
CreateOptions opsional
Opsi soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:(createInfo: CreateInfo) => void
-
createInfo
-
Hasil
-
Promise<CreateInfo>
Chrome 121 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
destroy()
chrome.socket.destroy(
socketId: number,
)
Menghancurkan soket. Setiap soket yang dibuat harus dihancurkan setelah digunakan.
Parameter
-
socketId
angka
SocketId.
disconnect()
chrome.socket.disconnect(
socketId: number,
)
Putuskan sambungan soket. Untuk soket UDP, disconnect
adalah non-operasi tetapi aman untuk dipanggil.
Parameter
-
socketId
angka
SocketId.
getInfo()
chrome.socket.getInfo(
socketId: number,
callback?: function,
)
Mengambil status soket yang diberikan.
Parameter
-
socketId
angka
SocketId.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:(result: SocketInfo) => void
-
hasil
-
Hasil
-
Promise<SocketInfo>
Chrome 121 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
getJoinedGroups()
chrome.socket.getJoinedGroups(
socketId: number,
callback: function,
)
Mendapatkan alamat grup multicast tempat soket saat ini bergabung.
Parameter
-
socketId
angka
SocketId.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(groups: string[]) => void
-
yang dilacak
{i>string<i}[]
-
getNetworkList()
chrome.socket.getNetworkList(
callback?: function,
)
Mengambil informasi tentang adaptor lokal di sistem ini.
Parameter
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:(result: NetworkInterface[]) => void
-
hasil
-
Hasil
-
Promise<NetworkInterface[]>
Chrome 121 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
joinGroup()
chrome.socket.joinGroup(
socketId: number,
address: string,
callback: function,
)
Bergabung dengan grup {i>multicast <i}dan mulai menerima paket dari grup tersebut. Soket harus berjenis UDP dan harus terikat ke port lokal sebelum memanggil metode ini.
Parameter
-
socketId
angka
SocketId.
-
alamat
string
Alamat grup yang akan bergabung. Nama domain tidak didukung.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
leaveGroup()
chrome.socket.leaveGroup(
socketId: number,
address: string,
callback: function,
)
Keluar dari grup multicast yang sebelumnya bergabung menggunakan joinGroup
. Anda tidak perlu keluar dari grup multicast sebelum menghancurkan soket atau keluar. Ini secara otomatis
disebut oleh OS.
Keluar dari grup akan mencegah {i>router<i} mengirim datagram multicast ke {i>host<i} lokal, dengan asumsi tidak ada proses lain pada {i>host<i} yang masih bergabung ke grup.
Parameter
-
socketId
angka
SocketId.
-
alamat
string
Alamat grup yang akan dihapus. Nama domain tidak didukung.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
listen()
chrome.socket.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
)
Metode ini hanya berlaku untuk soket TCP. Memproses koneksi pada port dan alamat yang ditentukan. Hal ini secara efektif menjadikan soket server ini sebagai soket server, dan fungsi soket klien (menghubungkan, membaca, menulis) tidak dapat lagi digunakan pada soket ini.
Parameter
-
socketId
angka
SocketId.
-
alamat
string
Alamat komputer lokal.
-
port
angka
Port komputer lokal.
-
backlog
angka opsional
Panjang antrean pemrosesan soket.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
read()
chrome.socket.read(
socketId: number,
bufferSize?: number,
callback: function,
)
Membaca data dari soket terhubung tertentu.
Parameter
-
socketId
angka
SocketId.
-
bufferSize
angka opsional
Ukuran buffer baca.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(readInfo: ReadInfo) => void
-
readInfo
-
recvFrom()
chrome.socket.recvFrom(
socketId: number,
bufferSize?: number,
callback: function,
)
Menerima data dari soket UDP yang diberikan.
Parameter
-
socketId
angka
SocketId.
-
bufferSize
angka opsional
Ukuran buffer penerimaan.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(recvFromInfo: RecvFromInfo) => void
-
recvFromInfo
-
secure()
chrome.socket.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
Memulai koneksi klien TLS melalui soket klien TCP yang terhubung.
Parameter
-
socketId
angka
Soket yang terhubung untuk digunakan.
-
opsi
SecureOptions opsional
Batasan dan parameter untuk koneksi TLS.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
sendTo()
chrome.socket.sendTo(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
callback: function,
)
Mengirim data pada soket UDP yang diberikan ke alamat dan port yang diberikan.
Parameter
-
socketId
angka
SocketId.
-
data
ArrayBuffer
Data yang akan ditulis.
-
alamat
string
Alamat komputer jarak jauh.
-
port
angka
Port komputer jarak jauh.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(writeInfo: WriteInfo) => void
-
writeInfo
-
setKeepAlive()
chrome.socket.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
Mengaktifkan atau menonaktifkan fungsi keep-alive untuk koneksi TCP.
Parameter
-
socketId
angka
SocketId.
-
aktifkan
boolean
Jika true (benar), aktifkan fungsi keep-alive.
-
penundaan
angka opsional
Atur detik tunda antara paket data terakhir yang diterima dan pemeriksaan keepalive pertama. Defaultnya adalah 0.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: boolean) => void
-
hasil
boolean
-
setMulticastLoopbackMode()
chrome.socket.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
)
Menyetel apakah paket multicast yang dikirim dari host ke grup multicast akan di-loop kembali ke host.
Catatan: perilaku setMulticastLoopbackMode
sedikit berbeda antara sistem seperti Windows dan Unix. Inkonsistensi hanya terjadi jika ada lebih dari satu aplikasi pada host yang sama yang bergabung ke grup multicast yang sama dan memiliki setelan yang berbeda pada mode loopback multicast. Di Windows, aplikasi dengan {i>loopback<i} nonaktif tidak akan MENERIMA paket loopback; sementara pada sistem serupa Unix, aplikasi dengan {i>loopback<i} nonaktif tidak akan MENGIRIMKAN paket loopback ke aplikasi lain pada {i>host<i} yang sama. Lihat MSDN: http://goo.gl/6vqbj
Memanggil metode ini tidak memerlukan izin multicast.
Parameter
-
socketId
angka
SocketId.
-
diaktifkan
boolean
Menunjukkan apakah akan mengaktifkan mode loopback.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
setMulticastTimeToLive()
chrome.socket.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
)
Menyetel time-to-live paket multicast yang dikirim ke grup multicast.
Memanggil metode ini tidak memerlukan izin multicast.
Parameter
-
socketId
angka
SocketId.
-
ttl
angka
Nilai time to live (TTL).
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: number) => void
-
hasil
angka
-
setNoDelay()
chrome.socket.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
Menyetel atau menghapus TCP_NODELAY
untuk koneksi TCP. Algoritma Nagle akan dinonaktifkan saat TCP_NODELAY
disetel.
Parameter
-
socketId
angka
SocketId.
-
noDelay
boolean
Jika true (benar), akan menonaktifkan algoritme Nagle.
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(result: boolean) => void
-
hasil
boolean
-
write()
chrome.socket.write(
socketId: number,
data: ArrayBuffer,
callback: function,
)
Menulis data pada soket terhubung yang ditentukan.