Deskripsi
Gunakan chrome.sockets.tcp
API untuk mengirim dan menerima data melalui jaringan menggunakan koneksi TCP. API ini menggantikan fungsi TCP yang sebelumnya ada di chrome.socket
API.
Manifes
Jenis
CreateInfo
Properti
-
socketId
angka
ID soket yang baru dibuat. Perhatikan bahwa ID soket yang dibuat dari API ini tidak kompatibel dengan ID soket yang dibuat dari API lain, seperti API
[
socket](../socket/)
yang tidak digunakan lagi.
DnsQueryType
Preferensi resolusi DNS. Defaultnya adalah any
dan menggunakan konfigurasi OS saat ini yang dapat menampilkan IPv4 atau IPv6. ipv4
memaksa IPv4, dan ipv6
memaksa IPv6.
Enum
"any"
"ipv4"
"ipv6"
ReceiveErrorInfo
Properti
-
resultCode
angka
Kode hasil yang ditampilkan dari panggilan jaringan pokok.
-
socketId
angka
ID soket.
ReceiveInfo
Properti
-
data
ArrayBuffer
Data yang diterima, dengan ukuran maksimum
bufferSize
. -
socketId
angka
ID soket.
SecureOptions
Properti
-
tlsVersion
TLSVersionConstraints opsional
SendInfo
Properti
-
bytesSent
nomor opsional
Jumlah byte yang dikirim (jika result == 0)
-
resultCode
angka
Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error.
SocketInfo
Properti
-
bufferSize
nomor opsional
Ukuran buffer yang digunakan untuk menerima data. Jika ukuran buffer tidak ditentukan secara eksplisit, nilai tidak akan diberikan.
-
terhubung
boolean
Tanda yang menunjukkan apakah soket terhubung ke peer jarak jauh.
-
localAddress
string opsional
Jika soket yang mendasarinya terhubung, berisi alamat IPv4/6 lokalnya.
-
localPort
nomor opsional
Jika soket yang mendasarinya terhubung, berisi port lokalnya.
-
nama
string opsional
String yang ditentukan aplikasi yang terkait dengan soket.
-
dijeda
boolean
Flag 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
nomor opsional
Jika soket yang mendasarinya terhubung, berisi port peer.
-
persisten
boolean
Tanda yang menunjukkan apakah soket dibiarkan terbuka saat aplikasi ditangguhkan (lihat
SocketProperties.persistent
). -
socketId
angka
ID soket.
SocketProperties
Properti
-
bufferSize
nomor 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
Flag yang menunjukkan apakah soket tetap terbuka saat halaman acara aplikasi dibatalkan pemuatannya (lihat Mengelola Siklus Proses Aplikasi). Nilai defaultnya adalah "false". Saat aplikasi dimuat, semua 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
atautls1.3
.Nilai
tls1
dantls1.1
tidak lagi didukung. Jikamin
ditetapkan ke salah satu nilai ini, nilai tersebut akan dibatasi secara diam-diam ketls1.2
. Jikamax
ditetapkan ke salah satu nilai tersebut, atau nilai lain yang tidak dikenali, nilai tersebut akan diabaikan tanpa pemberitahuan.
Metode
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
): Promise<void>
Menutup soket dan melepaskan alamat/port yang terikat ke soket. Setiap soket yang dibuat harus ditutup setelah digunakan. ID soket tidak lagi valid segera setelah fungsi dipanggil. Namun, soket dijamin hanya akan ditutup saat callback dipanggil.
Parameter
-
socketId
angka
ID soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
): void
Menghubungkan soket ke komputer jarak jauh. Saat operasi connect
berhasil diselesaikan, peristiwa onReceive
akan muncul saat data diterima dari peer. Jika terjadi error jaringan saat runtime menerima paket, peristiwa onReceiveError
akan dimunculkan, dan tidak ada lagi peristiwa onReceive
yang akan dimunculkan untuk soket ini hingga 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+Preferensi resolusi alamat.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: number) => void
-
hasil
angka
Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Membuat soket TCP.
Parameter
-
properti
SocketProperties opsional
Properti soket (opsional).
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(createInfo: CreateInfo) => void
-
createInfo
Hasil pembuatan soket.
-
Hasil
-
Promise<CreateInfo>
Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Memutuskan koneksi soket.
Parameter
-
socketId
angka
ID soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Mengambil status soket yang diberikan.
Parameter
-
socketId
angka
ID soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(socketInfo: SocketInfo) => void
-
socketInfo
Objek yang berisi informasi soket.
-
Hasil
-
Promise<SocketInfo>
Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Mengambil daftar soket yang saat ini terbuka dan dimiliki oleh aplikasi.
Parameter
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(socketInfos: SocketInfo[]) => void
-
socketInfos
Array objek yang berisi informasi soket.
-
Hasil
-
Promise<SocketInfo[]>
Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
): void
Mulai koneksi klien TLS melalui soket klien TCP yang terhubung.
Parameter
-
socketId
angka
Soket yang ada dan terhubung untuk digunakan.
-
opsi
SecureOptions opsional
Batasan dan parameter untuk koneksi TLS.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: number) => void
-
hasil
angka
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
): void
Mengirim data pada soket TCP yang ditentukan.
Parameter
-
socketId
angka
ID soket.
-
data
ArrayBuffer
Data yang akan dikirim.
-
callback
fungsi
Parameter
callback
terlihat seperti:(sendInfo: SendInfo) => void
-
sendInfo
Hasil metode
send
.
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
): void
Mengaktifkan atau menonaktifkan fungsi keep-alive untuk koneksi TCP.
Parameter
-
socketId
angka
ID soket.
-
aktifkan
boolean
Jika benar (true), aktifkan fungsi tetap aktif.
-
penundaan
nomor opsional
Menetapkan detik penundaan antara paket data terakhir yang diterima dan pemeriksaan tetap aktif pertama. Defaultnya adalah 0.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: number) => void
-
hasil
angka
Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error.
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
): void
Menetapkan atau menghapus TCP_NODELAY
untuk koneksi TCP. Algoritma Nagle akan dinonaktifkan saat TCP_NODELAY
disetel.
Parameter
-
socketId
angka
ID soket.
-
noDelay
boolean
Jika benar (true), algoritma Nagle akan dinonaktifkan.
-
callback
fungsi
Parameter
callback
terlihat seperti:(result: number) => void
-
hasil
angka
Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error.
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Mengaktifkan atau menonaktifkan aplikasi agar dapat menerima pesan dari peer-nya. Nilai defaultnya adalah "false". Menghentikan sementara soket biasanya digunakan oleh aplikasi untuk membatasi data yang dikirim oleh peer-nya. Saat soket dijeda, tidak ada peristiwa onReceive
yang dipicu. Saat soket terhubung dan tidak dijeda, peristiwa onReceive
akan muncul lagi saat pesan diterima.
Parameter
-
socketId
angka
-
dijeda
boolean
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Memperbarui properti socket.
Parameter
-
socketId
angka
ID soket.
-
properti
Properti yang akan diperbarui.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:() => void
Hasil
-
Promise<void>
Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.
Acara
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
Peristiwa dipicu saat data telah diterima untuk soket tertentu.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti:(info: ReceiveInfo) => void
-
info
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
Peristiwa yang muncul saat terjadi error jaringan ketika runtime menunggu data di alamat dan port soket. Setelah peristiwa ini dimunculkan, soket akan disetel ke paused
dan tidak ada lagi peristiwa onReceive
yang dimunculkan untuk soket ini.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti:(info: ReceiveErrorInfo) => void
-
info
-