chrome.socket

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 dengan API sockets.udp, sockets.tcp, dan sockets.tcpServer.

Izin

socket

Jenis

AcceptInfo

Properti

  • resultCode

    angka

  • socketId

    nomor opsional

    ID soket yang diterima.

CreateInfo

Properti

  • socketId

    angka

    ID soket yang baru dibuat.

CreateOptions

NetworkInterface

Properti

  • alamat

    string

    Alamat IPv4/6 yang tersedia.

  • name

    string

    Nama adaptor yang mendasari. Pada *nix, ini biasanya adalah "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 perangkat jarak jauh.

  • data

    ArrayBuffer

  • port

    angka

  • resultCode

    angka

    resultCode yang ditampilkan dari panggilan recvfrom() yang mendasarinya.

SecureOptions

Properti

SocketInfo

Properti

  • terhubung

    boolean

    Apakah soket yang mendasarinya terhubung atau tidak.

    Untuk soket tcp, hal ini akan tetap benar meskipun peer jarak jauh telah terputus. Membaca atau menulis ke soket selanjutnya dapat menghasilkan error, yang mengisyaratkan bahwa soket ini harus diputus melalui disconnect().

    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

    nomor opsional

    Jika soket yang mendasarinya terikat atau terhubung, berisi port lokalnya.

  • peerAddress

    string opsional

    Jika soket yang mendasarinya terhubung, berisi alamat IPv4/6 peer.

  • peerPort

    nomor opsional

    Jika soket yang mendasarinya terhubung, berisi port peer yang terhubung.

  • socketType

    Jenis soket yang diteruskan. Ini akan menjadi tcp atau udp.

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 atau tls1.3.

    Nilai tls1 dan tls1.1 tidak lagi didukung. Jika min disetel ke salah satu nilai ini, nilai tersebut akan disembunyikan ke tls1.2. Jika max ditetapkan ke salah satu nilai tersebut, atau nilai yang tidak dikenali lainnya, 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 untuk dipanggil saat koneksi diterima pada soket server yang memproses ini. Opsi mendengarkan harus dipanggil terlebih dahulu. Jika sudah ada callback terima yang aktif, callback ini akan segera dipanggil dengan error sebagai resultCode.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (acceptInfo: AcceptInfo)=>void

bind()

chrome.socket.bind(
  socketId: number,
  address: string,
  port: number,
  callback: function,
)

Mengikat alamat lokal untuk soket. Saat ini, koneksi tersebut tidak mendukung soket TCP.

Parameter

  • socketId

    angka

    ID soket.

  • alamat

    string

    Alamat komputer lokal.

  • port

    angka

    Port komputer 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, hal ini menetapkan alamat default tempat paket dikirim dan dibaca untuk panggilan read() dan write().

Parameter

  • socketId

    angka

    ID soket.

  • hostname

    string

    Nama host atau alamat IP mesin jarak jauh.

  • port

    angka

    Port komputer jarak jauh.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (result: number)=>void

    • hasil

      angka

create()

Promise
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

  • tipe

    Jenis soket yang akan dibuat. Harus tcp atau udp.

  • opsi

    CreateOptions opsional

    Opsi soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (createInfo: CreateInfo)=>void

Hasil

  • Promise<CreateInfo>

    Chrome 121 dan yang lebih baru

    Promise 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

    ID soket.

disconnect()

chrome.socket.disconnect(
  socketId: number,
)

Memutuskan sambungan soket. Untuk soket UDP, disconnect adalah non-operasi, tetapi aman untuk dipanggil.

Parameter

  • socketId

    angka

    ID soket.

getInfo()

Promise
chrome.socket.getInfo(
  socketId: number,
  callback?: function,
)

Mengambil status soket yang diberikan.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (result: SocketInfo)=>void

Hasil

  • Promise<SocketInfo>

    Chrome 121 dan yang lebih baru

    Promise 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 yang saat ini digabungkan dengan soket.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (groups: string[])=>void

    • grup

      string[]

getNetworkList()

Promise
chrome.socket.getNetworkList(
  callback?: function,
)

Mengambil informasi tentang adaptor lokal pada sistem ini.

Parameter

Hasil

  • Promise<NetworkInterface[]>

    Chrome 121 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

joinGroup()

chrome.socket.joinGroup(
  socketId: number,
  address: string,
  callback: function,
)

Bergabunglah dengan grup multicast dan mulai terima paket dari grup tersebut. Soket harus berjenis UDP dan harus terikat dengan port lokal sebelum memanggil metode ini.

Parameter

  • socketId

    angka

    ID soket.

  • alamat

    string

    Alamat grup untuk bergabung. 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 secara 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

    ID soket.

  • alamat

    string

    Alamat grup yang akan keluar. 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 pada port dan alamat yang ditentukan. Hal ini secara efektif menjadikannya soket server, dan fungsi soket klien (menghubungkan, membaca, menulis) tidak lagi dapat digunakan pada soket ini.

Parameter

  • socketId

    angka

    ID soket.

  • alamat

    string

    Alamat komputer lokal.

  • port

    angka

    Port komputer lokal.

  • backlog

    nomor 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

    ID soket.

  • bufferSize

    nomor opsional

    Ukuran buffer operasi baca.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (readInfo: ReadInfo)=>void

recvFrom()

chrome.socket.recvFrom(
  socketId: number,
  bufferSize?: number,
  callback: function,
)

Menerima data dari soket UDP yang diberikan.

Parameter

  • socketId

    angka

    ID soket.

  • bufferSize

    nomor opsional

    Ukuran buffer penerimaan.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (recvFromInfo: RecvFromInfo)=>void

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:

    (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

    ID soket.

  • data

    ArrayBuffer

    Data yang akan ditulis.

  • alamat

    string

    Alamat perangkat jarak jauh.

  • port

    angka

    Port komputer jarak jauh.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (writeInfo: WriteInfo)=>void

setKeepAlive()

chrome.socket.setKeepAlive(
  socketId: number,
  enable: boolean,
  delay?: number,
  callback: function,
)

Mengaktifkan atau menonaktifkan fungsi keep-alive untuk koneksi TCP.

Parameter

  • socketId

    angka

    ID soket.

  • enable

    boolean

    Jika true (benar), aktifkan fungsi keep-alive.

  • delay

    nomor opsional

    Menyetel detik penundaan antara paket data terakhir yang diterima dan pemeriksaan 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 Unix yang mirip. Inkonsistensi hanya terjadi jika ada lebih dari satu aplikasi pada host yang sama yang digabungkan ke grup multicast yang sama, tetapi memiliki setelan yang berbeda pada mode loopback multicast. Di Windows, aplikasi yang memiliki loopback nonaktif tidak akan MENERIMA paket loopback; sementara pada sistem yang menyerupai Unix, aplikasi yang memiliki loopback nonaktif tidak akan MENGIRIMKAN paket loopback ke aplikasi lain pada host yang sama. Lihat MSDN: http://goo.gl/6vqbj

Memanggil metode ini tidak memerlukan izin multicast.

Parameter

  • socketId

    angka

    ID soket.

  • diaktifkan

    boolean

    Tentukan apakah mode loopback diaktifkan atau tidak.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (result: number)=>void

    • hasil

      angka

setMulticastTimeToLive()

chrome.socket.setMulticastTimeToLive(
  socketId: number,
  ttl: number,
  callback: function,
)

Menyetel waktu aktif paket multicast yang dikirim ke grup multicast.

Memanggil metode ini tidak memerlukan izin multicast.

Parameter

  • socketId

    angka

    ID soket.

  • 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 disetel.

Parameter

  • socketId

    angka

    ID soket.

  • noDelay

    boolean

    Jika true (benar), akan menonaktifkan algoritma Nagle.

  • 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 diberikan.

Parameter

  • socketId

    angka

    ID soket.

  • data

    ArrayBuffer

    Data yang akan ditulis.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (writeInfo: WriteInfo)=>void