Açıklama
UDP bağlantılarını kullanarak ağ üzerinden veri göndermek ve almak için chrome.sockets.udp
API'yi kullanın. Bu API, daha önce "socket" API'de bulunan UDP işlevinin yerini alır.
Manifest
Türler
CreateInfo
Özellikler
-
socketId
sayı
Yeni oluşturulan soketin kimliği. Bu API'den oluşturulan soket kimliklerinin, desteği sonlandırılan
[
socket](../socket/)
API gibi diğer API'lerden oluşturulan soket kimlikleriyle uyumlu olmadığını unutmayın.
DnsQueryType
DNS çözümleme tercihleri. Varsayılan değer any
'tür ve IPv4 veya IPv6 döndürebilecek mevcut işletim sistemi yapılandırmasını kullanır. ipv4
IPv4'ü, ipv6
ise IPv6'yı zorlar.
Enum
"any"
"ipv4"
"ipv6"
ReceiveErrorInfo
Özellikler
-
resultCode
sayı
Temel recvfrom() çağrısından döndürülen sonuç kodu.
-
socketId
sayı
Soket kimliği.
ReceiveInfo
Özellikler
-
aktarma
ArrayBuffer
UDP paket içeriği (geçerli arabellek boyutuna göre kısaltılır).
-
remoteAddress
dize
Paketin geldiği ana makinenin adresi.
-
remotePort
sayı
Paketin geldiği ana makinenin bağlantı noktası.
-
socketId
sayı
Soket kimliği.
SendInfo
Özellikler
-
bytesSent
number isteğe bağlı
Gönderilen bayt sayısı (result == 0 ise)
-
resultCode
sayı
Temel ağ çağrısından döndürülen sonuç kodu. Negatif değer bir hatayı gösterir.
SocketInfo
Özellikler
-
bufferSize
number isteğe bağlı
Veri almak için kullanılan arabelleğin boyutu. Açıkça bir arabellek boyutu belirtilmediyse değer sağlanmaz.
-
localAddress
dize isteğe bağlı
Temel soket bağlıysa yerel IPv4/6 adresini içerir.
-
localPort
number isteğe bağlı
Temel soket bağlıysa yerel bağlantı noktasını içerir.
-
ad
dize isteğe bağlı
Soketle ilişkili uygulama tanımlı dize.
-
duraklatıldı
boolean
Soketin onReceive etkinliklerinin tetiklenmesini engelleyip engellemediğini belirten işaret.
-
kalıcı
boolean
Uygulama askıya alındığında soketin açık bırakılıp bırakılmayacağını belirten işaret (bkz.
SocketProperties.persistent
). -
socketId
sayı
Soket tanımlayıcısı.
SocketProperties
Özellikler
-
bufferSize
number isteğe bağlı
Veri almak için kullanılan arabelleğin boyutu. Arabellek, UDP paketini alamayacak kadar küçükse veriler kaybolur. Varsayılan değer 4096'dır.
-
ad
dize isteğe bağlı
Soketle ilişkili, uygulama tarafından tanımlanan bir dize.
-
kalıcı
boole isteğe bağlı
Uygulamanın etkinlik sayfası yüklenmediğinde soketin açık bırakılıp bırakılmadığını belirten işaret (Uygulama Yaşam Döngüsünü Yönetme bölümüne bakın). Varsayılan değer "false" (yanlış) değeridir. Uygulama yüklendiğinde, daha önce persistent=true ile açılan tüm soketler
getSockets
ile getirilebilir.
Yöntemler
bind()
chrome.sockets.udp.bind(
socketId: number,
address: string,
port: number,
callback: function,
)
Soket için yerel adresi ve bağlantı noktasını bağlar. İstemci soketi için platformun boş bir bağlantı noktası seçmesine izin vermek üzere 0 numaralı bağlantı noktasının kullanılması önerilir.
bind
işlemi başarıyla tamamlandıktan sonra, soket duraklatılmadığı sürece UDP paketleri belirtilen adrese/porta ulaştığında onReceive
etkinlikleri tetiklenir.
Parametreler
-
socketId
sayı
Soket kimliği.
-
adres
dize
Yerel makinenin adresi. DNS adı, IPv4 ve IPv6 biçimleri desteklenir. Mevcut tüm yerel ağ arayüzlerinden gelen paketleri kabul etmek için "0.0.0.0" değerini kullanın.
-
bağlantı noktası
sayı
Yerel makinenin bağlantı noktası. Boş bir bağlantı noktasına bağlamak için "0" değerini kullanın.
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(result: number) => void
-
sonuç
sayı
Temel ağ çağrısından döndürülen sonuç kodu. Negatif değer bir hatayı gösterir.
-
close()
chrome.sockets.udp.close(
socketId: number,
callback?: function,
)
Soketi kapatır ve soketin bağlı olduğu adresi/portu serbest bırakır. Oluşturulan her soket kullanımdan sonra kapatılmalıdır. İşlev çağrıldıktan sonra soket kimliği artık geçerli değildir. Ancak, soketin yalnızca geri çağırma işlevi çağrıldığında kapatılacağı garanti edilir.
Parametreler
-
socketId
sayı
Soket kimliği.
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 121 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
create()
chrome.sockets.udp.create(
properties?: SocketProperties,
callback?: function,
)
Belirtilen özelliklere sahip bir UDP soketi oluşturur.
Parametreler
-
mülkler
SocketProperties isteğe bağlı
Soket özellikleri (isteğe bağlı).
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(createInfo: CreateInfo) => void
-
createInfo
Soket oluşturma işleminin sonucu.
-
İadeler
-
Promise<CreateInfo>
Chrome 121 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getInfo()
chrome.sockets.udp.getInfo(
socketId: number,
callback?: function,
)
Belirtilen soketin durumunu alır.
Parametreler
-
socketId
sayı
Soket kimliği.
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(socketInfo: SocketInfo) => void
-
socketInfo
Soket bilgilerini içeren nesne.
-
İadeler
-
Promise<SocketInfo>
Chrome 121 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getJoinedGroups()
chrome.sockets.udp.getJoinedGroups(
socketId: number,
callback?: function,
)
Soketin şu anda bağlı olduğu çoklu yayın grubu adreslerini alır.
Parametreler
-
socketId
sayı
Soket kimliği.
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(groups: string[]) => void
-
groups
dize[]
Soketin katıldığı grup dizisi.
-
İadeler
-
Promise<string[]>
Chrome 121 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getSockets()
chrome.sockets.udp.getSockets(
callback?: function,
)
Uygulamaya ait şu anda açık olan soketlerin listesini alır.
Parametreler
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(socketInfos: SocketInfo[]) => void
-
socketInfos
Soket bilgilerini içeren nesne dizisi.
-
İadeler
-
Promise<SocketInfo[]>
Chrome 121 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
joinGroup()
chrome.sockets.udp.joinGroup(
socketId: number,
address: string,
callback: function,
)
Çoklu yayın grubuna katılır ve bu gruptan paket almaya başlar. Bu yöntem çağrılmadan önce soket yerel bir bağlantı noktasına bağlanmalıdır.
Parametreler
-
socketId
sayı
Soket kimliği.
-
adres
dize
Katılacağınız grup adresi. Alan adları desteklenmez.
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(result: number) => void
-
sonuç
sayı
Temel ağ çağrısından döndürülen sonuç kodu. Negatif değer bir hatayı gösterir.
-
leaveGroup()
chrome.sockets.udp.leaveGroup(
socketId: number,
address: string,
callback: function,
)
Daha önce joinGroup
kullanılarak katılan çoklu yayın grubundan ayrılır. Bu işlem, yalnızca soket kapatıldığında işletim sistemi tarafından otomatik olarak yapıldığından, soketi daha sonra kullanmayı planlıyorsanız çağrılması gerekir.
Gruptan ayrılmak, ana makinede grupta hâlâ başka bir işlem olmadığı varsayılarak yönlendiricinin yerel ana makineye çoklu yayın veri paketleri göndermesini engeller.
Parametreler
-
socketId
sayı
Soket kimliği.
-
adres
dize
Ayrılmak istediğiniz grup adresi. Alan adları desteklenmez.
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(result: number) => void
-
sonuç
sayı
Temel ağ çağrısından döndürülen sonuç kodu. Negatif değer bir hatayı gösterir.
-
send()
chrome.sockets.udp.send(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
dnsQueryType?: DnsQueryType,
callback: function,
)
Belirtilen soketteki verileri belirtilen adrese ve bağlantı noktasına gönderir. Bu yöntem çağrılmadan önce soket yerel bir bağlantı noktasına bağlanmalıdır.
Parametreler
-
socketId
sayı
Soket kimliği.
-
aktarma
ArrayBuffer
Gönderilecek veriler.
-
adres
dize
Uzak makinenin adresi.
-
bağlantı noktası
sayı
Uzak makinenin bağlantı noktası.
-
dnsQueryType
DnsQueryType isteğe bağlı
Chrome 103 ve sonraki sürümlerAdres çözümleme tercihi.
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(sendInfo: SendInfo) => void
-
sendInfo
send
yönteminin sonucu.
-
setBroadcast()
chrome.sockets.udp.setBroadcast(
socketId: number,
enabled: boolean,
callback: function,
)
Bu sokette yayın paketlerini etkinleştirir veya devre dışı bırakır.
Parametreler
-
socketId
sayı
Soket kimliği.
-
etkin
boolean
Yayın paketlerini etkinleştirmek için
true
, devre dışı bırakmak içinfalse
simgesini tıklayın. -
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(result: number) => void
-
sonuç
sayı
Temel ağ çağrısından döndürülen sonuç kodu.
-
setMulticastLoopbackMode()
chrome.sockets.udp.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
)
Ana makineden çoklu yayın grubuna gönderilen çoklu yayın paketlerinin ana makineye geri dönüp dönmeyeceğini belirler.
Not: setMulticastLoopbackMode
işlevinin davranışı Windows ile Unix benzeri sistemler arasında biraz farklıdır. Tutarsızlık yalnızca aynı ana makinede, çoklu yayın geri döngü modunda farklı ayarlara sahipken aynı çoklu yayın grubuna katılmış birden fazla uygulama olduğunda ortaya çıkar. Windows'ta, loopback devre dışı olan uygulamalar loopback paketlerini ALMAZ. Unix benzeri sistemlerde ise loopback devre dışı olan uygulamalar loopback paketlerini aynı ana makinedeki diğer uygulamalara GÖNDERMEZ. MSDN'ye bakın: http://goo.gl/6vqbj
Bu yöntemin çağrılması için çoklu yayın izinleri gerekmez.
Parametreler
-
socketId
sayı
Soket kimliği.
-
etkin
boolean
Döngü modunun etkinleştirilip etkinleştirilmeyeceğini belirtin.
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(result: number) => void
-
sonuç
sayı
Temel ağ çağrısından döndürülen sonuç kodu. Negatif değer bir hatayı gösterir.
-
setMulticastTimeToLive()
chrome.sockets.udp.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
)
Çok noktaya yayın grubuna gönderilen çok noktaya yayın paketlerinin yaşam süresini ayarlar.
Bu yöntemin çağrılması için çoklu yayın izinleri gerekmez.
Parametreler
-
socketId
sayı
Soket kimliği.
-
ttl
sayı
Geçerlilik süresi değeri.
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(result: number) => void
-
sonuç
sayı
Temel ağ çağrısından döndürülen sonuç kodu. Negatif değer bir hatayı gösterir.
-
setPaused()
chrome.sockets.udp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Bir soketi duraklatır veya duraklatmayı kaldırır. Duraklatılmış bir soketin onReceive
etkinlikleri tetiklemesi engellenir.
Parametreler
-
socketId
sayı
-
duraklatıldı
boolean
Duraklatmanın veya duraklatmanın kaldırılmasının belirtildiği işaret.
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 121 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
update()
chrome.sockets.udp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Soket özelliklerini günceller.
Parametreler
-
socketId
sayı
Soket kimliği.
-
mülkler
Güncellenecek tesisler.
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 121 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
Etkinlikler
onReceive
chrome.sockets.udp.onReceive.addListener(
callback: function,
)
Belirtilen soket için bir UDP paketi alındığında oluşturulan etkinlik.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(info: ReceiveInfo) => void
-
bilgi
-
onReceiveError
chrome.sockets.udp.onReceiveError.addListener(
callback: function,
)
Çalışma zamanı, soket adresi ve bağlantı noktasında veri beklerken bir ağ hatası oluştuğunda etkinlik oluşturulur. Bu etkinlik tetiklendikten sonra soket duraklatılır ve soket devam ettirilene kadar bu soket için başka onReceive
etkinliği tetiklenmez.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(info: ReceiveErrorInfo) => void
-
bilgi
-