Deskripsi
Gunakan chrome.sockets.udp API untuk mengirim dan menerima data melalui jaringan menggunakan koneksi UDP. API ini menggantikan fungsi UDP yang sebelumnya ditemukan di API "socket".
Manifes
Jenis
CreateInfo
Properti
- 
    socketIdangka 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
- 
    resultCodeangka Kode hasil yang ditampilkan dari panggilan recvfrom() pokok. 
- 
    socketIdangka ID soket. 
ReceiveInfo
Properti
- 
    dataArrayBuffer Isi paket UDP (dipangkas ke ukuran buffer saat ini). 
- 
    remoteAddressstring Alamat host asal paket. 
- 
    remotePortangka Port host tempat paket berasal. 
- 
    socketIdangka ID soket. 
SendInfo
Properti
- 
    bytesSentnomor opsional Jumlah byte yang dikirim (jika result == 0) 
- 
    resultCodeangka Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error. 
SocketInfo
Properti
- 
    bufferSizenomor opsional Ukuran buffer yang digunakan untuk menerima data. Jika ukuran buffer tidak ditentukan secara eksplisit, nilai tidak akan diberikan. 
- 
    localAddressstring opsional Jika soket yang mendasarinya terikat, berisi alamat IPv4/6 lokalnya. 
- 
    localPortnomor opsional Jika soket yang mendasarinya terikat, berisi port lokalnya. 
- 
    namastring opsional String yang ditentukan aplikasi yang terkait dengan soket. 
- 
    dijedaboolean Tanda yang menunjukkan apakah soket diblokir agar tidak memicu peristiwa onReceive. 
- 
    persistenboolean Tanda yang menunjukkan apakah soket dibiarkan terbuka saat aplikasi ditangguhkan (lihat SocketProperties.persistent).
- 
    socketIdangka ID soket. 
SocketProperties
Properti
- 
    bufferSizenomor opsional Ukuran buffer yang digunakan untuk menerima data. Jika buffer terlalu kecil untuk menerima paket UDP, data akan hilang. Nilai defaultnya adalah 4096. 
- 
    namastring opsional String yang ditentukan aplikasi yang terkait dengan soket. 
- 
    persistenboolean 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.
Metode
bind()
chrome.sockets.udp.bind(
socketId: number,
address: string,
port: number,
callback: function,
): void
Mengikat alamat dan port lokal untuk soket. Untuk soket klien, sebaiknya gunakan port 0 agar platform memilih port yang tersedia.
Setelah operasi bind berhasil diselesaikan, peristiwa onReceive akan muncul saat paket UDP tiba di alamat/port yang ditentukan -- kecuali jika soket dijeda.
Parameter
- 
    socketIdangka ID soket. 
- 
    alamatstring Alamat mesin lokal. Format nama DNS, IPv4, dan IPv6 didukung. Gunakan "0.0.0.0" untuk menerima paket dari semua antarmuka jaringan lokal yang tersedia. 
- 
    portangka Port mesin lokal. Gunakan "0" untuk mengikat ke port gratis. 
- 
    callbackfungsi Parameter callbackterlihat seperti:(result: number) => void - 
    hasilangka Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error. 
 
- 
    
close()
chrome.sockets.udp.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
- 
    socketIdangka ID soket. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:() => void 
Hasil
- 
            Promise<void> Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
create()
chrome.sockets.udp.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Membuat soket UDP dengan properti yang ditentukan.
Parameter
- 
    propertiSocketProperties opsional Properti soket (opsional). 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(createInfo: CreateInfo) => void - 
    createInfoHasil pembuatan soket. 
 
- 
    
Hasil
- 
            Promise<CreateInfo> Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getInfo()
chrome.sockets.udp.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Mengambil status soket yang diberikan.
Parameter
- 
    socketIdangka ID soket. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(socketInfo: SocketInfo) => void - 
    socketInfoObjek yang berisi informasi soket. 
 
- 
    
Hasil
- 
            Promise<SocketInfo> Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getJoinedGroups()
chrome.sockets.udp.getJoinedGroups(
socketId: number,
callback?: function,
): Promise<string[]>
Mendapatkan alamat grup multicast yang saat ini diikuti oleh soket.
Parameter
- 
    socketIdangka ID soket. 
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(groups: string[]) => void - 
    yang dilacakstring[] Array grup yang diikuti socket. 
 
- 
    
Hasil
- 
            Promise<string[]> Chrome 121+Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback. 
getSockets()
chrome.sockets.udp.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Mengambil daftar soket yang saat ini terbuka dan dimiliki oleh aplikasi.
Parameter
- 
    callbackfungsi opsional Parameter callbackterlihat seperti:(socketInfos: SocketInfo[]) => void - 
    socketInfosArray 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. 
joinGroup()
chrome.sockets.udp.joinGroup(
socketId: number,
address: string,
callback: function,
): void
Bergabung dengan grup multicast dan mulai menerima paket dari grup tersebut. Socket harus terikat ke port lokal sebelum memanggil metode ini.
Parameter
- 
    socketIdangka ID soket. 
- 
    alamatstring Alamat grup yang akan diikuti. Nama domain tidak didukung. 
- 
    callbackfungsi Parameter callbackterlihat seperti:(result: number) => void - 
    hasilangka Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error. 
 
- 
    
leaveGroup()
chrome.sockets.udp.leaveGroup(
socketId: number,
address: string,
callback: function,
): void
Keluar dari grup multicast yang sebelumnya bergabung menggunakan joinGroup. Panggilan ini hanya diperlukan jika Anda berencana untuk terus menggunakan soket setelahnya, karena akan dilakukan secara otomatis oleh OS saat soket ditutup.
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
- 
    socketIdangka ID soket. 
- 
    alamatstring Alamat grup yang akan ditinggalkan. Nama domain tidak didukung. 
- 
    callbackfungsi Parameter callbackterlihat seperti:(result: number) => void - 
    hasilangka Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error. 
 
- 
    
send()
chrome.sockets.udp.send(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
dnsQueryType?: DnsQueryType,
callback: function,
): void
Mengirim data pada soket tertentu ke alamat dan port tertentu. Socket harus terikat ke port lokal sebelum memanggil metode ini.
Parameter
- 
    socketIdangka ID soket. 
- 
    dataArrayBuffer Data yang akan dikirim. 
- 
    alamatstring Alamat komputer jarak jauh. 
- 
    portangka Port komputer jarak jauh. 
- 
    dnsQueryTypeDnsQueryType opsional Chrome 103+Preferensi resolusi alamat. 
- 
    callbackfungsi Parameter callbackterlihat seperti:(sendInfo: SendInfo) => void - 
    sendInfoHasil metode send.
 
- 
    
setBroadcast()
chrome.sockets.udp.setBroadcast(
socketId: number,
enabled: boolean,
callback: function,
): void
Mengaktifkan atau menonaktifkan paket siaran di soket ini.
Parameter
- 
    socketIdangka ID soket. 
- 
    diaktifkanboolean trueuntuk mengaktifkan paket siaran,falseuntuk menonaktifkannya.
- 
    callbackfungsi Parameter callbackterlihat seperti:(result: number) => void - 
    hasilangka Kode hasil yang ditampilkan dari panggilan jaringan pokok. 
 
- 
    
setMulticastLoopbackMode()
chrome.sockets.udp.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
): void
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. Ketidakkonsistenan hanya terjadi jika ada lebih dari satu aplikasi di host yang sama yang bergabung ke grup multicast yang sama, tetapi memiliki setelan yang berbeda pada mode loopback multicast. Di Windows, aplikasi dengan loopback nonaktif tidak akan MENERIMA paket loopback; sedangkan di sistem mirip Unix, aplikasi dengan loopback nonaktif tidak akan MENGIRIM paket loopback ke aplikasi lain di host yang sama. Lihat MSDN: https://learn.microsoft.com/en-us/windows/win32/winsock/ip-multicast-2
Memanggil metode ini tidak memerlukan izin multicast.
Parameter
- 
    socketIdangka ID soket. 
- 
    diaktifkanboolean Menunjukkan apakah akan mengaktifkan mode loopback. 
- 
    callbackfungsi Parameter callbackterlihat seperti:(result: number) => void - 
    hasilangka Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error. 
 
- 
    
setMulticastTimeToLive()
chrome.sockets.udp.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
): void
Menetapkan time-to-live paket multicast yang dikirim ke grup multicast.
Memanggil metode ini tidak memerlukan izin multicast.
Parameter
- 
    socketIdangka ID soket. 
- 
    ttlangka Nilai time-to-live. 
- 
    callbackfungsi Parameter callbackterlihat seperti:(result: number) => void - 
    hasilangka Kode hasil yang ditampilkan dari panggilan jaringan pokok. Nilai negatif menunjukkan error. 
 
- 
    
setPaused()
chrome.sockets.udp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Menjeda atau melanjutkan soket. Soket yang dijeda diblokir agar tidak memicu peristiwa onReceive.
Parameter
- 
    socketIdangka 
- 
    dijedaboolean Tanda untuk menunjukkan apakah akan dijeda atau dilanjutkan. 
- 
    callbackfungsi opsional Parameter callbackterlihat 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.udp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Memperbarui properti socket.
Parameter
- 
    socketIdangka ID soket. 
- 
    propertiProperti yang akan diperbarui. 
- 
    callbackfungsi opsional Parameter callbackterlihat 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.udp.onReceive.addListener(
callback: function,
)
Peristiwa dipicu saat paket UDP telah diterima untuk soket tertentu.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:(info: ReceiveInfo) => void - 
    info
 
- 
    
onReceiveError
chrome.sockets.udp.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 dijeda dan tidak ada lagi peristiwa onReceive yang akan dimunculkan untuk soket ini hingga soket dilanjutkan.
Parameter
- 
    callbackfungsi Parameter callbackterlihat seperti:(info: ReceiveErrorInfo) => void - 
    info
 
-