chrome.sockets.udp

Açıklama

UDP bağlantılarını kullanarak ağ üzerinden veri gönderip almak için chrome.sockets.udp API'yi kullanın. Bu API, daha önce "socket" API'sinde bulunan UDP işlevinin yerini alır.

Manifest

Bu API'yi kullanmak için aşağıdaki anahtarların manifest'te beyan edilmesi gerekir.

"sockets"

Türler

CreateInfo

Özellikler

  • socketId

    sayı

    Yeni oluşturulan yuvanın kimliği. Bu API'den oluşturulan yuva kimliklerinin, kullanımdan kaldırılan [socket](../socket/) API gibi diğer API'lerden oluşturulan yuva kimlikleriyle uyumlu olmadığını unutmayın.

DnsQueryType

Chrome 103 ve sonraki sürümler

DNS çözümleme tercihleri. Varsayılan değer any şeklindedir ve IPv4 veya IPv6 döndürebilen mevcut işletim sistemi yapılandırmasını kullanır. ipv4 IPv4'ü, ipv6 ise IPv6'yı zorunlu kılar.

Enum

"any"

"ipv4"

"ipv6"

ReceiveErrorInfo

Özellikler

  • resultCode

    sayı

    Temel recvfrom() çağrısından döndürülen sonuç kodu.

  • socketId

    sayı

    Yuva kimliği.

ReceiveInfo

Özellikler

  • veri

    ArrayBuffer

    UDP paketi içeriği (geçerli arabellek boyutuna kısaltılır).

  • remoteAddress

    dize

    Paketin geldiği ana makinenin adresi.

  • remotePort

    sayı

    Paketin geldiği ana makinenin bağlantı noktası.

  • socketId

    sayı

    Yuva kimliği.

SendInfo

Özellikler

  • bytesSent

    numara isteğe bağlı

    Gönderilen bayt sayısı (sonuç == 0 ise)

  • resultCode

    sayı

    Temel ağ çağrısından döndürülen sonuç kodu. Negatif değer, bir hata olduğunu gösterir.

SocketInfo

Özellikler

  • bufferSize

    numara isteğe bağlı

    Verileri almak için kullanılan arabelleğin boyutu. Açıkça herhangi bir tampon boyutu belirtilmediyse değer sağlanmaz.

  • localAddress

    string isteğe bağlı

    Alttaki yuva bağlıysa yerel IPv4/6 adresini içerir.

  • localPort

    numara isteğe bağlı

    Alttaki yuva bağlıysa yerel bağlantı noktasını içerir.

  • ad

    string isteğe bağlı

    Yuvayla ilişkilendirilen uygulama tanımlı dize.

  • duraklatıldı

    boolean

    Yuvanın onReceived etkinliklerini tetiklemesinin engellenip engellenmediğini gösteren işaret.

  • inatçı

    boolean

    Uygulama askıya alındığında soketin açık kalıp kalmadığını gösteren işaret (bkz. SocketProperties.persistent).

  • socketId

    sayı

    Yuva tanımlayıcısı.

SocketProperties

Özellikler

  • bufferSize

    numara isteğe bağlı

    Verileri almak için kullanılan arabelleğin boyutu. Arabellek UDP paketini almak için çok küçükse veri kaybolur. Varsayılan değer 4096'dır.

  • ad

    string isteğe bağlı

    Yuvayla ilişkilendirilmiş, uygulama tanımlı bir dize.

  • inatçı

    boole isteğe bağlı

    Uygulamanın etkinlik sayfası kaldırıldığında soketin açık kalıp kalmadığını gösteren işaret (Uygulama Yaşam Döngüsünü Yönetme bölümüne bakın). Varsayılan değer "false" değeridir. Uygulama yüklendiğinde, daha önce kalıcı=true ile açılmış olan tüm yuvalar getSockets ile getirilebilir.

Yöntemler

bind()

chrome.sockets.udp.bind(
  socketId: number,
  address: string,
  port: number,
  callback: function,
)

Yuva için yerel adresi ve bağlantı noktasını bağlar. İstemci soketinde, platformun serbest bir bağlantı noktası seçmesine izin vermek için 0 numaralı bağlantı noktasının kullanılması önerilir.

bind işlemi başarıyla tamamlandıktan sonra, UDP paketleri belirtilen adrese/bağlantı noktasına ulaştığında (yuva duraklatılmadığı sürece) onReceive etkinlik yükseltilir.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • adres

    dize

    Yerel makinenin adresi. DNS adı, IPv4 ve IPv6 biçimleri desteklenir. Kullanılabilir tüm yerel ağ arayüzlerinden gelen paketleri kabul etmek için "0.0.0.0"ı 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 hata olduğunu gösterir.

close()

Söz
chrome.sockets.udp.close(
  socketId: number,
  callback?: function,
)

Yuvayı kapatır ve soketin bağlı olduğu adresi/bağlantı noktasını serbest bırakır. Oluşturulan her yuva kullanıldıktan sonra kapatılmalıdır. İşlev çağrıldığı anda yuva kimliği artık geçerli değildir. Ancak yalnızca geri çağırma çağrıldığında yuvanın kapatılması garanti edilir.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • geri çağırma

    Functions (isteğe bağlı)

    callback parametresi şu şekilde görünür:

    ()=>void

İlerlemeler

  • Promise<void>

    Chrome 121 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları kullanması gerekir.

create()

Söz
chrome.sockets.udp.create(
  properties?: SocketProperties,
  callback?: function,
)

Belirtilen özelliklerle bir UDP soketi oluşturur.

Parametreler

  • mülkler

    SocketProperties isteğe bağlı

    Yuva özellikleri (isteğe bağlı).

  • geri çağırma

    Functions (isteğe bağlı)

    callback parametresi şu şekilde görünür:

    (createInfo: CreateInfo)=>void

    • createInfo

      Yuva oluşturma işleminin sonucu.

İlerlemeler

  • Promise<CreateInfo>

    Chrome 121 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları kullanması gerekir.

getInfo()

Söz
chrome.sockets.udp.getInfo(
  socketId: number,
  callback?: function,
)

Belirtilen yuvanın durumunu alır.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • geri çağırma

    Functions (isteğe bağlı)

    callback parametresi şu şekilde görünür:

    (socketInfo: SocketInfo)=>void

    • socketInfo

      Yuva bilgilerini içeren nesne.

İlerlemeler

  • Promise<SocketInfo>

    Chrome 121 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları kullanması gerekir.

getJoinedGroups()

Söz
chrome.sockets.udp.getJoinedGroups(
  socketId: number,
  callback?: function,
)

Yuvanın şu anda bağlı olduğu çoklu yayın grup adreslerini alır.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • geri çağırma

    Functions (isteğe bağlı)

    callback parametresi şu şekilde görünür:

    (groups: string[])=>void

    • grup

      dize[]

      Yuvanın katıldığı grup dizisi.

İlerlemeler

  • Söz<dize[]>

    Chrome 121 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları kullanması gerekir.

getSockets()

Söz
chrome.sockets.udp.getSockets(
  callback?: function,
)

Uygulamanın sahip olduğu, açık durumdaki yuvaların listesini alır.

Parametreler

  • geri çağırma

    Functions (isteğe bağlı)

    callback parametresi şu şekilde görünür:

    (socketInfos: SocketInfo[])=>void

    • socketInfos

      Yuva bilgilerini içeren nesne dizisi.

İlerlemeler

  • Promise<SocketInfo[]>

    Chrome 121 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları 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ı

    Yuva kimliği.

  • adres

    dize

    Katılmak için 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 hata olduğunu gösterir.

leaveGroup()

chrome.sockets.udp.leaveGroup(
  socketId: number,
  address: string,
  callback: function,
)

Daha önce joinGroup kullanılarak katılmış çok noktaya yayın grubundan ayrılır. Bu işlem, yuva kapatıldığında işletim sistemi tarafından otomatik olarak yapılacağı için yalnızca daha sonra soketi kullanmayı planlıyorsanız gerekir.

Gruptan çıkmak, ana makinede hâlâ gruba katılmış başka bir işlemin olmadığı varsayıldığında yönlendiricinin yerel ana makineye çoklu yayın veri birimi göndermesi engellenir.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • adres

    dize

    Ayrılacak 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 hata olduğunu gösterir.

send()

chrome.sockets.udp.send(
  socketId: number,
  data: ArrayBuffer,
  address: string,
  port: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)

Belirtilen yuvadaki 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ı

    Yuva kimliği.

  • veri

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

    Adres çö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 44 ve sonraki sürümler
chrome.sockets.udp.setBroadcast(
  socketId: number,
  enabled: boolean,
  callback: function,
)

Bu yuvada yayın paketlerini etkinleştirir veya devre dışı bırakır.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • etkin

    boolean

    Yayın paketlerini etkinleştirmek için true, devre dışı bırakmak için false.

  • 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ülüp döndürülmeyeceğini belirler.

Not: setMulticastLoopbackMode davranışı, Windows ve Unix benzeri sistemler arasında biraz farklıdır. Tutarsızlık, yalnızca aynı ana makinede aynı çoklu yayın grubuna katılan ve çoklu yayın geri döngü modunda farklı ayarlara sahip birden fazla uygulama olduğunda ortaya çıkar. Windows'da, geri dönüş özelliği kapalı olan uygulamalar, geri dönüş paketlerini ALMAZ. Unix benzeri sistemlerde, geri döngü kapalı olan uygulamalar ise geri dönüş paketlerini aynı ana makinedeki diğer uygulamalara GÖNDERmez. MSDN'ye bakın: http://goo.gl/6vqbj

Bu yöntemi çağırmak için çoklu yayın izinleri gerekmez.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • etkin

    boolean

    Geri dönüş 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 hata olduğunu gösterir.

setMulticastTimeToLive()

chrome.sockets.udp.setMulticastTimeToLive(
  socketId: number,
  ttl: number,
  callback: function,
)

Çoklu yayın grubuna gönderilen çoklu yayın paketlerinin geçerlilik süresini ayarlar.

Bu yöntemi çağırmak için çoklu yayın izinleri gerekmez.

Parametreler

  • socketId

    sayı

    Yuva 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 hata olduğunu gösterir.

setPaused()

Söz
chrome.sockets.udp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

Bir yuvayı duraklatır veya devam ettirir. Duraklatılmış bir yuvanın onReceive etkinliklerini tetiklemesi engellenir.

Parametreler

  • socketId

    sayı

  • duraklatıldı

    boolean

    İşaretle.

  • geri çağırma

    Functions (isteğe bağlı)

    callback parametresi şu şekilde görünür:

    ()=>void

İlerlemeler

  • Promise<void>

    Chrome 121 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları kullanması gerekir.

update()

Söz
chrome.sockets.udp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

Yuva özelliklerini günceller.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • mülkler

    Güncellenecek özellikler.

  • geri çağırma

    Functions (isteğe bağlı)

    callback parametresi şu şekilde görünür:

    ()=>void

İlerlemeler

  • Promise<void>

    Chrome 121 ve sonraki sürümler

    Vaatler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırmaları kullanması gerekir.

Etkinlikler

onReceive

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

Belirtilen yuva için bir UDP paketi alındığında etkinlik başlatılır.

Parametreler

  • geri çağırma

    işlev

    callback parametresi şu şekilde görünür:

    (info: ReceiveInfo)=>void

onReceiveError

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

Çalışma zamanı, yuva adresi ve bağlantı noktasında veri beklerken bir ağ hatası oluştuğunda ortaya çıkan etkinlik ortaya çıktı. Bu etkinlik yükseltildiğinde, yuva duraklatılır ve yuva devam ettirilene kadar bu yuva için başka onReceive etkinliği yükseltilmez.

Parametreler