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 diganti dengan API sockets.udp
, sockets.tcp
, dan sockets.tcpServer
.
Izin
socket
Jenis
AcceptInfo
Properti
-
resultCode
angka
-
socketId
number 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. Di *nix, ini 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 pokok terhubung atau tidak.
Untuk soket
tcp
, hal ini akan tetap berlaku meskipun peer jarak jauh telah terputus. Membaca atau menulis ke soket dapat menyebabkan error, yang mengisyaratkan bahwa soket ini harus diputuskan melaluidisconnect()
.Untuk soket
udp
, ini hanya menunjukkan apakah alamat jarak jauh default telah ditentukan untuk membaca dan menulis paket. -
localAddress
string opsional
Jika soket pokok terikat atau terhubung, berisi alamat IPv4/6 lokalnya.
-
localPort
number opsional
Jika soket pokok terikat atau terhubung, berisi port lokalnya.
-
peerAddress
string opsional
Jika soket pokok terhubung, berisi alamat IPv4/6 peer.
-
peerPort
number opsional
Jika soket pokok terhubung, berisi port peer yang terhubung.
-
socketType
Jenis soket yang diteruskan. Nilainya akan berupa
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. Jika ditetapkan ke salah satu nilai ini,min
akan diam-diam ditetapkan ketls1.2
. Jikamax
ditetapkan ke salah satu nilai tersebut, atau nilai lain yang tidak dikenali, nilai tersebut akan diabaikan secara diam-diam.
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 yang akan dipanggil saat koneksi diterima di soket server pemroses ini. Listen 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:(acceptInfo: AcceptInfo) => void
-
acceptInfo
-
bind()
chrome.socket.bind(
socketId: number,
address: string,
port: number,
callback: function,
)
Mengikat alamat lokal untuk soket. Saat ini, aplikasi ini tidak mendukung soket TCP.
Parameter
-
socketId
angka
socketId.
-
alamat
string
Alamat komputer lokal.
-
port
angka
Port mesin lokal.
-
callback
fungsi
Parameter
callback
terlihat seperti:(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
, tindakan ini akan menetapkan alamat default tempat paket dikirim dan dibaca untuk panggilan read()
dan write()
.
Parameter
-
socketId
angka
socketId.
-
hostname
string
Nama host atau alamat IP komputer jarak jauh.
-
port
angka
Port komputer jarak jauh.
-
callback
fungsi
Parameter
callback
terlihat seperti:(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 berupa
tcp
atauudp
. -
opsi
CreateOptions opsional
Opsi soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(createInfo: CreateInfo) => void
-
createInfo
-
Hasil
-
Promise<CreateInfo>
Chrome 121+Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus 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,
)
Memutuskan 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:(result: SocketInfo) => void
-
hasil
-
Hasil
-
Promise<SocketInfo>
Chrome 121+Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.
getJoinedGroups()
chrome.socket.getJoinedGroups(
socketId: number,
callback: function,
)
Mendapatkan alamat grup multicast yang saat ini terhubung ke soket.
Parameter
-
socketId
angka
socketId.
-
callback
fungsi
Parameter
callback
terlihat seperti:(groups: string[]) => void
-
yang dilacak
string[]
-
getNetworkList()
chrome.socket.getNetworkList(
callback?: function,
)
Mengambil informasi tentang adaptor lokal di sistem ini.
Parameter
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(result: NetworkInterface[]) => void
-
hasil
-
Hasil
-
Promise<NetworkInterface[]>
Chrome 121+Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain harus menggunakan callback.
joinGroup()
chrome.socket.joinGroup(
socketId: number,
address: string,
callback: function,
)
Bergabunglah ke grup multicast dan mulai terima 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 diikuti. Nama domain tidak didukung.
-
callback
fungsi
Parameter
callback
terlihat seperti:(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 otomatis dipanggil oleh OS.
Keluar dari grup akan mencegah router mengirim datagram multicast ke host lokal, dengan asumsi tidak ada proses lain di host yang masih bergabung ke grup.
Parameter
-
socketId
angka
socketId.
-
alamat
string
Alamat grup yang akan ditinggalkan. Nama domain tidak didukung.
-
callback
fungsi
Parameter
callback
terlihat seperti:(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 di port dan alamat yang ditentukan. Hal ini secara efektif menjadikannya sebagai soket server, dan fungsi soket klien (connect, read, write) tidak dapat lagi digunakan di soket ini.
Parameter
-
socketId
angka
socketId.
-
alamat
string
Alamat komputer lokal.
-
port
angka
Port mesin lokal.
-
backlog
number opsional
Panjang antrean pemrosesan soket.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: number) => void
-
hasil
angka
-
read()
chrome.socket.read(
socketId: number,
bufferSize?: number,
callback: function,
)
Membaca data dari soket terhubung yang diberikan.
Parameter
-
socketId
angka
socketId.
-
bufferSize
number opsional
Ukuran buffer baca.
-
callback
fungsi
Parameter
callback
terlihat seperti:(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
number opsional
Ukuran buffer penerimaan.
-
callback
fungsi
Parameter
callback
terlihat seperti:(recvFromInfo: RecvFromInfo) => void
-
recvFromInfo
-
secure()
chrome.socket.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
Mulai 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:(result: number) => void
-
hasil
angka
-
sendTo()
chrome.socket.sendTo(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
callback: function,
)
Mengirim data di 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:(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, aktifkan fungsi keep-alive.
-
penundaan
number opsional
Tetapkan detik penundaan antara paket data terakhir yang diterima dan probe keepalive pertama. Defaultnya adalah 0.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: boolean) => void
-
hasil
boolean
-
setMulticastLoopbackMode()
chrome.socket.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
)
Menetapkan apakah paket multicast yang dikirim dari host ke grup multicast akan di-loop kembali ke host.
Catatan: perilaku setMulticastLoopbackMode
sedikit berbeda antara sistem Windows dan sistem mirip Unix. Inkonsistensi hanya terjadi jika ada lebih dari satu aplikasi di host yang sama yang bergabung ke grup multicast yang sama dengan setelan yang berbeda pada mode loopback multicast. Di Windows, aplikasi dengan loopback nonaktif tidak akan MENERIMA paket loopback; sedangkan di sistem seperti Unix, aplikasi dengan loopback nonaktif tidak akan MENGIRIM paket loopback ke aplikasi lain di host 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:(result: number) => void
-
hasil
angka
-
setMulticastTimeToLive()
chrome.socket.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
)
Menetapkan 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.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: number) => void
-
hasil
angka
-
setNoDelay()
chrome.socket.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
Menetapkan atau menghapus TCP_NODELAY
untuk koneksi TCP. Algoritma Nagle akan dinonaktifkan saat TCP_NODELAY
ditetapkan.
Parameter
-
socketId
angka
socketId.
-
noDelay
boolean
Jika true, algoritma Nagle akan dinonaktifkan.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: boolean) => void
-
hasil
boolean
-
write()
chrome.socket.write(
socketId: number,
data: ArrayBuffer,
callback: function,
)
Menulis data pada soket terhubung yang ditentukan.