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 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

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 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 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 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 ditetapkan ke salah satu nilai ini, min akan diam-diam ditetapkan ke tls1.2. Jika max 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

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()

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

  • jenis

    Jenis soket yang akan dibuat. Harus berupa tcp atau udp.

  • opsi

    CreateOptions opsional

    Opsi soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (createInfo: CreateInfo) => void

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()

Promise
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

  • 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()

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

Mengambil informasi tentang adaptor lokal di sistem ini.

Parameter

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

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

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

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.

Parameter

  • socketId

    angka

    socketId.

  • data

    ArrayBuffer

    Data yang akan ditulis.

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (writeInfo: WriteInfo) => void