chrome.sockets.tcp

Deskripsi

Gunakan chrome.sockets.tcp API untuk mengirim dan menerima data melalui jaringan menggunakan koneksi TCP. API ini menggantikan fungsi TCP yang sebelumnya ditemukan di chrome.socket API.

Manifes

Kunci berikut harus dideklarasikan dalam manifes untuk menggunakan API ini.

"sockets"

Jenis

CreateInfo

Properti

  • socketId

    angka

    ID soket yang baru dibuat. Perlu diperhatikan bahwa ID soket yang dibuat dari API ini tidak kompatibel dengan ID soket yang dibuat dari API lain, seperti API [socket](../socket/) yang sudah tidak digunakan lagi.

DnsQueryType

Chrome 103 dan yang lebih baru

Preferensi resolusi DNS. Defaultnya adalah any dan menggunakan konfigurasi OS saat ini yang mungkin menampilkan IPv4 atau IPv6. ipv4 memaksa IPv4, dan ipv6 memaksa IPv6.

Enum

"apa saja"

"ipv4"

"ipv6"

ReceiveErrorInfo

Properti

  • resultCode

    angka

    Kode hasil yang ditampilkan dari panggilan jaringan yang mendasarinya.

  • socketId

    angka

    ID soket.

ReceiveInfo

Properti

  • data

    ArrayBuffer

    Data yang diterima, dengan ukuran maksimal bufferSize.

  • socketId

    angka

    ID soket.

SecureOptions

Properti

SendInfo

Properti

  • bytesSent

    angka opsional

    Jumlah byte yang dikirim (jika hasilnya == 0)

  • resultCode

    angka

    Kode hasil yang ditampilkan dari panggilan jaringan yang mendasarinya. Nilai negatif menunjukkan error.

SocketInfo

Properti

  • bufferSize

    angka opsional

    Ukuran buffer yang digunakan untuk menerima data. Jika tidak ada ukuran buffer yang ditentukan secara eksplisit, nilainya tidak diberikan.

  • terhubung

    boolean

    Tanda yang menunjukkan apakah soket terhubung ke peer jarak jauh atau tidak.

  • localAddress

    string opsional

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

  • localPort

    angka opsional

    Jika soket yang mendasari terhubung, berarti berisi port lokalnya.

  • nama

    string opsional

    String yang ditentukan aplikasi yang terkait dengan soket.

  • dijeda

    boolean

    Tanda yang menunjukkan apakah soket yang terhubung memblokir peer-nya agar tidak mengirim lebih banyak data (lihat setPaused).

  • peerAddress

    string opsional

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

  • peerPort

    angka opsional

    Jika soket yang mendasarinya terhubung, berarti berisi port peer.

  • persisten

    boolean

    Tanda yang menunjukkan apakah soket dibiarkan terbuka atau tidak saat aplikasi ditangguhkan (lihat SocketProperties.persistent).

  • socketId

    angka

    ID soket.

SocketProperties

Properti

  • bufferSize

    angka opsional

    Ukuran buffer yang digunakan untuk menerima data. Nilai defaultnya adalah 4096.

  • nama

    string opsional

    String yang ditentukan aplikasi yang terkait dengan soket.

  • persisten

    boolean opsional

    Tanda yang menunjukkan apakah soket dibiarkan terbuka saat halaman peristiwa aplikasi dihapus muatannya (lihat Mengelola Siklus Proses Aplikasi). Nilai defaultnya adalah "false". Saat aplikasi dimuat, setiap soket yang sebelumnya dibuka dengan persistent=true dapat diambil dengan getSockets.

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 ditetapkan ke salah satu nilai ini, nilai tersebut akan dibulatkan ke tls1.2 secara otomatis. Jika max disetel ke salah satu nilai tersebut, atau nilai lain yang tidak dikenal, nilai tersebut akan diabaikan tanpa pemberitahuan.

Metode

close()

Janji
chrome.sockets.tcp.close(
  socketId: number,
  callback?: function,
)

Menutup soket dan melepaskan alamat/port tempat soket terikat. Setiap soket yang dibuat harus ditutup setelah digunakan. ID soket tidak lagi valid segera pada fungsi yang dipanggil. Akan tetapi, soket dijamin akan ditutup hanya ketika callback dipanggil.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    () => void

Hasil

  • Janji<void>

    Chrome 121 dan yang lebih baru

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

connect()

chrome.sockets.tcp.connect(
  socketId: number,
  peerAddress: string,
  peerPort: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)

Menghubungkan soket ke mesin jarak jauh. Saat operasi connect berhasil diselesaikan, peristiwa onReceive akan dimunculkan ketika data diterima dari pembanding. Jika terjadi error jaringan saat runtime menerima paket, peristiwa onReceiveError akan dipicu, dan pada saat itu tidak ada lagi peristiwa onReceive yang akan dimunculkan untuk soket ini sampai metode resume dipanggil.

Parameter

  • socketId

    angka

    ID soket.

  • peerAddress

    string

    Alamat komputer jarak jauh. Format nama DNS, IPv4, dan IPv6 didukung.

  • peerPort

    angka

    Port komputer jarak jauh.

  • dnsQueryType

    DnsQueryType opsional

    Chrome 103 dan yang lebih baru

    Preferensi resolusi alamat.

  • callback

    fungsi

    Parameter callback terlihat seperti ini:

    (result: number) => void

    • hasil

      angka

      Kode hasil yang ditampilkan dari panggilan jaringan yang mendasarinya. Nilai negatif menunjukkan error.

create()

Janji
chrome.sockets.tcp.create(
  properties?: SocketProperties,
  callback?: function,
)

Membuat soket TCP.

Parameter

  • properti

    Properti soket (opsional).

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (createInfo: CreateInfo) => void

Hasil

  • Promise&lt;CreateInfo&gt;

    Chrome 121 dan yang lebih baru

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

disconnect()

Janji
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)

Putuskan sambungan soket.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    () => void

Hasil

  • Janji<void>

    Chrome 121 dan yang lebih baru

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

getInfo()

Janji
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)

Mengambil status soket yang diberikan.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Objek yang berisi informasi soket.

Hasil

  • Promise&lt;SocketInfo&gt;

    Chrome 121 dan yang lebih baru

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

getSockets()

Janji
chrome.sockets.tcp.getSockets(
  callback?: function,
)

Mengambil daftar soket yang saat ini dibuka milik aplikasi.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      Array objek yang berisi informasi soket.

Hasil

  • Promise&lt;SocketInfo[]&gt;

    Chrome 121 dan yang lebih baru

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

secure()

chrome.sockets.tcp.secure(
  socketId: number,
  options?: SecureOptions,
  callback: function,
)

Memulai koneksi klien TLS melalui soket klien TCP yang terhubung.

Parameter

  • socketId

    angka

    Soket yang terhubung dan ada yang akan digunakan.

  • opsi

    SecureOptions opsional

    Batasan dan parameter untuk koneksi TLS.

  • callback

    fungsi

    Parameter callback terlihat seperti ini:

    (result: number) => void

    • hasil

      angka

send()

chrome.sockets.tcp.send(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)

Mengirim data pada soket TCP yang diberikan.

Parameter

  • socketId

    angka

    ID soket.

  • data

    ArrayBuffer

    Data yang akan dikirim.

  • callback

    fungsi

    Parameter callback terlihat seperti ini:

    (sendInfo: SendInfo) => void

setKeepAlive()

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

Mengaktifkan atau menonaktifkan fungsi keep-alive untuk koneksi TCP.

Parameter

  • socketId

    angka

    ID soket.

  • 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: number) => void

    • hasil

      angka

      Kode hasil yang ditampilkan dari panggilan jaringan yang mendasarinya. Nilai negatif menunjukkan error.

setNoDelay()

chrome.sockets.tcp.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

    ID soket.

  • noDelay

    boolean

    Jika true (benar), akan menonaktifkan algoritme Nagle.

  • callback

    fungsi

    Parameter callback terlihat seperti ini:

    (result: number) => void

    • hasil

      angka

      Kode hasil yang ditampilkan dari panggilan jaringan yang mendasarinya. Nilai negatif menunjukkan error.

setPaused()

Janji
chrome.sockets.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

Mengaktifkan atau menonaktifkan aplikasi agar tidak menerima pesan dari peer-nya. Nilai defaultnya adalah "false". Menjeda soket biasanya digunakan oleh aplikasi untuk membatasi data yang dikirim oleh pembandingnya. Saat soket dijeda, tidak ada peristiwa onReceive yang dipicu. Saat soket terhubung dan batal dijeda, peristiwa onReceive akan dimunculkan lagi saat pesan diterima.

Parameter

  • socketId

    angka

  • dijeda

    boolean

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    () => void

Hasil

  • Janji<void>

    Chrome 121 dan yang lebih baru

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

update()

Janji
chrome.sockets.tcp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

Memperbarui properti soket.

Parameter

  • socketId

    angka

    ID soket.

  • properti

    Properti yang akan diperbarui.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti ini:

    () => void

Hasil

  • Janji<void>

    Chrome 121 dan yang lebih baru

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

Acara

onReceive

chrome.sockets.tcp.onReceive.addListener(
  callback: function,
)

Peristiwa yang dimunculkan saat data telah diterima untuk soket tertentu.

Parameter

onReceiveError

chrome.sockets.tcp.onReceiveError.addListener(
  callback: function,
)

Peristiwa muncul saat terjadi error jaringan saat runtime menunggu data di port dan alamat soket. Setelah peristiwa ini dipicu, soket disetel ke paused dan tidak ada lagi peristiwa onReceive yang dimunculkan untuk soket ini.

Parameter