chrome.socket

Açıklama

TCP ve UDP bağlantılarını kullanarak ağ üzerinden veri gönderip almak için chrome.socket API'yi kullanın. Not: Chrome 33'ten itibaren bu API kullanımdan kaldırılarak yerine sockets.udp, sockets.tcp ve sockets.tcpServer API'leri kullanıma sunulacak.

İzinler

socket

Türler

AcceptInfo

Özellikler

  • resultCode

    sayı

  • socketId

    numara isteğe bağlı

    Kabul edilen yuvanın kimliği.

CreateInfo

Özellikler

  • socketId

    sayı

    Yeni oluşturulan yuvanın kimliği.

CreateOptions

NetworkInterface

Özellikler

  • adres

    dize

    Kullanılabilir IPv4/6 adresi.

  • ad

    dize

    Bağdaştırıcının temel adı. *nix'te bu genellikle "eth0", "lo" vb. olur.

  • prefixLength

    sayı

    Ön ek uzunluğu

ReadInfo

Özellikler

  • veri

    ArrayBuffer

  • resultCode

    sayı

    Temel Read() çağrısından döndürülen resultCode.

RecvFromInfo

Özellikler

  • adres

    dize

    Uzak makinenin adresi.

  • veri

    ArrayBuffer

  • bağlantı noktası

    sayı

  • resultCode

    sayı

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

SecureOptions

Özellikler

SocketInfo

Özellikler

  • bağlandı

    boolean

    Alt yuvanın bağlı olup olmadığı.

    tcp soketler için bu, uzak eşin bağlantısı kesilse bile doğru kalır. Bu durumda, yuvaya okuma veya yazma işlemi hataya neden olabilir. Bu da, bu yuvanın disconnect() aracılığıyla bağlantısının kesilmesi gerektiği imasında bulunur.

    udp yuvaları için bu yalnızca paket okuma ve yazma için varsayılan bir uzak adres belirtilip belirtilmediğini gösterir.

  • localAddress

    string isteğe bağlı

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

  • localPort

    numara isteğe bağlı

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

  • peerAddress

    string isteğe bağlı

    Alt yuva bağlıysa eşin IPv4/6 adresini içerir.

  • peerPort

    numara isteğe bağlı

    Alttaki yuva bağlıysa bağlı eşin bağlantı noktasını içerir.

  • socketType

    Geçirilen yuvanın türü. Bu tcp veya udp olacaktır.

SocketType

Enum

"tcp"

"udp"

TLSVersionConstraints

Özellikler

  • maks.

    string isteğe bağlı

  • dak

    string isteğe bağlı

    TLS'nin kabul edilebilir minimum ve maksimum sürümleri. tls1.2 veya tls1.3 değerleri desteklenir.

    tls1 ve tls1.1 değerleri artık desteklenmiyor. min bu değerlerden birine ayarlanırsa sessizce tls1.2 değerine sabitlenir. max bu değerlerden birine veya tanınmayan başka bir değere ayarlanırsa sessizce yoksayılır.

WriteInfo

Özellikler

  • bytesWritten

    sayı

    Gönderilen bayt sayısı veya negatif hata kodu.

Yöntemler

accept()

chrome.socket.accept(
  socketId: number,
  callback: function,
)

Bu yöntem yalnızca TCP yuvaları için geçerlidir. Bu dinleme sunucusu soketinde bir bağlantı kabul edildiğinde çağrılacak bir geri çağırma işlevi kaydeder. Önce dinleme çağrılmalıdır. Zaten etkin bir geri çağırmayı kabul et özelliği varsa bu geri çağırma, resultCode değerine sahip bir hatayla hemen birlikte çağrılır.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • geri çağırma

    işlev

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

    (acceptInfo: AcceptInfo)=>void

bind()

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

Yuva için yerel adresi bağlar. Şu anda TCP soketini desteklememektedir.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • adres

    dize

    Yerel makinenin adresi.

  • bağlantı noktası

    sayı

    Yerel makinenin bağlantı noktası.

  • geri çağırma

    işlev

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

    (result: number)=>void

    • sonuç

      sayı

connect()

chrome.socket.connect(
  socketId: number,
  hostname: string,
  port: number,
  callback: function,
)

Soketi uzak makineye bağlar (tcp soket için). udp soketi için bu, read() ile write() çağrılarında paketlerin gönderildiği ve okunduğu varsayılan adresi belirler.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • hostname

    dize

    Uzak makinenin ana makine adı veya IP adresi.

  • bağlantı noktası

    sayı

    Uzak makinenin bağlantı noktası.

  • geri çağırma

    işlev

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

    (result: number)=>void

    • sonuç

      sayı

create()

Söz
chrome.socket.create(
  type: SocketType,
  options?: CreateOptions,
  callback?: function,
)

Belirtilen uzak makineye bağlanacak, belirtilen türde bir yuva oluşturur.

Parametreler

  • tür

    Oluşturulacak yuva türü. tcp veya udp olmalıdır.

  • seçenekler

    CreateOptions isteğe bağlı

    Yuva seçenekleri.

  • geri çağırma

    Functions (isteğe bağlı)

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

    (createInfo: CreateInfo)=>void

İ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.

destroy()

chrome.socket.destroy(
  socketId: number,
)

Yuvayı yok eder. Oluşturulan her yuva kullanıldıktan sonra yok edilmelidir.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

disconnect()

chrome.socket.disconnect(
  socketId: number,
)

Prizin bağlantısını keser. UDP yuvaları için disconnect çalışmaz ancak güvenli bir şekilde çağrı yapılabilir.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

getInfo()

Söz
chrome.socket.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:

    (result: SocketInfo)=>void

İ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()

chrome.socket.getJoinedGroups(
  socketId: number,
  callback: function,
)

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

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • geri çağırma

    işlev

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

    (groups: string[])=>void

    • grup

      dize[]

getNetworkList()

Söz
chrome.socket.getNetworkList(
  callback?: function,
)

Bu sistemdeki yerel bağdaştırıcılar hakkında bilgi alır.

Parametreler

İlerlemeler

  • Promise<NetworkInterface[]>

    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.socket.joinGroup(
  socketId: number,
  address: string,
  callback: function,
)

Çoklu yayın grubuna katılın ve bu gruptan paket almaya başlayın. Yuva UDP türünde olmalıdır ve bu yöntem çağrılmadan önce 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ı

leaveGroup()

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

Daha önce joinGroup kullanılarak katılmış olan çoklu yayın grubundan ayrılın. Yuvayı bozmadan veya çıkmadan önce çoklu yayın grubundan ayrılmanız gerekmez. Bu, işletim sistemi tarafından otomatik olarak çağrılır.

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ı

listen()

chrome.socket.listen(
  socketId: number,
  address: string,
  port: number,
  backlog?: number,
  callback: function,
)

Bu yöntem yalnızca TCP yuvaları için geçerlidir. Belirtilen bağlantı noktası ve adresteki bağlantıları dinler. Bu durum, etkin bir şekilde bu ürünü bir sunucu soketi haline getirir ve istemci yuva işlevleri (bağlama, okuma, yazma) artık bu yuvada kullanılamaz.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • adres

    dize

    Yerel makinenin adresi.

  • bağlantı noktası

    sayı

    Yerel makinenin bağlantı noktası.

  • iş listesi

    numara isteğe bağlı

    Yuvanın dinleme sırasının uzunluğu.

  • geri çağırma

    işlev

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

    (result: number)=>void

    • sonuç

      sayı

read()

chrome.socket.read(
  socketId: number,
  bufferSize?: number,
  callback: function,
)

Belirtilen bağlı yuvadaki verileri okur.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • bufferSize

    numara isteğe bağlı

    Okuma arabelleği boyutu.

  • geri çağırma

    işlev

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

    (readInfo: ReadInfo)=>void

recvFrom()

chrome.socket.recvFrom(
  socketId: number,
  bufferSize?: number,
  callback: function,
)

Belirtilen UDP soketinden veri alır.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • bufferSize

    numara isteğe bağlı

    Alma arabellek boyutu.

  • geri çağırma

    işlev

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

    (recvFromInfo: RecvFromInfo)=>void

secure()

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

Bağlı bir TCP istemci soketi üzerinden TLS istemci bağlantısı başlatın.

Parametreler

  • socketId

    sayı

    Kullanılacak bağlı soket.

  • seçenekler

    SecureOptions isteğe bağlı

    TLS bağlantısı kısıtlamaları ve parametreleri.

  • geri çağırma

    işlev

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

    (result: number)=>void

    • sonuç

      sayı

sendTo()

chrome.socket.sendTo(
  socketId: number,
  data: ArrayBuffer,
  address: string,
  port: number,
  callback: function,
)

Belirtilen UDP soketindeki verileri belirtilen adrese ve bağlantı noktasına gönderir.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • veri

    ArrayBuffer

    Yazılacak veriler.

  • adres

    dize

    Uzak makinenin adresi.

  • bağlantı noktası

    sayı

    Uzak makinenin bağlantı noktası.

  • geri çağırma

    işlev

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

    (writeInfo: WriteInfo)=>void

setKeepAlive()

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

TCP bağlantısı için keep-alive işlevini etkinleştirir veya devre dışı bırakır.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • enable

    boolean

    Doğru değerine ayarlanırsa canlı tutma işlevini etkinleştirin.

  • delay

    numara isteğe bağlı

    Alınan son veri paketi ile ilk keepalive kontrolü arasındaki saniye cinsinden gecikme süresini ayarlayın. Varsayılan değer 0'dır.

  • geri çağırma

    işlev

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

    (result: boolean)=>void

    • sonuç

      boolean

setMulticastLoopbackMode()

chrome.socket.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ı

setMulticastTimeToLive()

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

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

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ı

setNoDelay()

chrome.socket.setNoDelay(
  socketId: number,
  noDelay: boolean,
  callback: function,
)

TCP bağlantısı için TCP_NODELAY değerini belirler veya temizler. TCP_NODELAY ayarlandığında Nagle'ın algoritması devre dışı bırakılır.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • noDelay

    boolean

    True (doğru) değerine ayarlanırsa Nagle'ın algoritması devre dışı bırakılır.

  • geri çağırma

    işlev

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

    (result: boolean)=>void

    • sonuç

      boolean

write()

chrome.socket.write(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)

Belirtilen bağlı yuvaya veri yazar.

Parametreler

  • socketId

    sayı

    Yuva kimliği.

  • veri

    ArrayBuffer

    Yazılacak veriler.

  • geri çağırma

    işlev

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

    (writeInfo: WriteInfo)=>void