chrome.socket

Açıklama

TCP ve UDP bağlantılarını kullanarak ağ üzerinden veri göndermek ve almak için chrome.socket API'yi kullanın. Not: Chrome 33'ten itibaren bu API'nin desteği sonlandırıldı ve sockets.udp, sockets.tcp ve sockets.tcpServer API'leri kullanıma sunuldu.

İzinler

socket

Türler

AcceptInfo

Özellikler

  • resultCode

    sayı

  • socketId

    number isteğe bağlı

    Kabul edilen soketin kimliği.

CreateInfo

Özellikler

  • socketId

    sayı

    Yeni oluşturulan soketin kimliği.

CreateOptions

NetworkInterface

Özellikler

  • adres

    dize

    Kullanılabilir IPv4/6 adresi.

  • ad

    dize

    Adaptörün temel adı. *nix'te bu genellikle "eth0", "lo" vb. olur.

  • prefixLength

    sayı

    Önek 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

    Temel soketin bağlı olup olmadığı.

    tcp soketlerinde, uzak eşle bağlantı kesilse bile bu durum geçerliliğini korur. Bu durumda, sokete okuma veya yazma işlemi, bu soketin disconnect() aracılığıyla bağlantısının kesilmesi gerektiğini belirten bir hatayla sonuçlanabilir.

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

  • localAddress

    dize isteğe bağlı

    Temel soket bağlı veya bağlıysa yerel IPv4/6 adresini içerir.

  • localPort

    number isteğe bağlı

    Temel soket bağlı veya bağlıysa yerel bağlantı noktasını içerir.

  • peerAddress

    dize isteğe bağlı

    Temel soket bağlıysa eşlemenin IPv4/6 adresini içerir.

  • peerPort

    number isteğe bağlı

    Temel soket bağlıysa bağlı eşin bağlantı noktasını içerir.

  • socketType

    İletilen soketin türü. Bu, tcp veya udp olacaktır.

SocketType

Enum

"tcp"

"udp"

TLSVersionConstraints

Özellikler

  • maks.

    dize isteğe bağlı

  • dk

    dize 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 bir hata kodu.

Yöntemler

accept()

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

Bu yöntem yalnızca TCP soketlerinde geçerlidir. Bu dinleyici sunucu soketinde bir bağlantı kabul edildiğinde çağrılacak bir geri çağırma işlevi kaydeder. Önce Listen çağrılmalıdır. Etkin bir kabul geri çağırma işlevi varsa bu geri çağırma işlevi, resultCode olarak bir hata ile hemen çağrılır.

Parametreler

  • socketId

    sayı

    socketId.

  • 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,
)

Soket için yerel adresi bağlar. Şu anda TCP soketi desteklenmiyor.

Parametreler

  • socketId

    sayı

    socketId.

  • 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 soketi için). udp soketi için bu, read() ve write() çağrılarında paketlerin gönderildiği ve okunduğu varsayılan adresi belirler.

Parametreler

  • socketId

    sayı

    socketId.

  • ana makine adı

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

Promise
chrome.socket.create(
  type: SocketType,
  options?: CreateOptions,
  callback?: function,
)

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

Parametreler

  • tür

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

  • seçenekler

    CreateOptions isteğe bağlı

    Soket seçenekleri.

  • geri çağırma

    işlev isteğe bağlı

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

    (createInfo: CreateInfo) => void

İadeler

  • Promise<CreateInfo>

    Chrome 121 ve sonraki sürümler

    Sözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

destroy()

chrome.socket.destroy(
  socketId: number,
)

Soketi yok eder. Oluşturulan her soket kullanımdan sonra imha edilmelidir.

Parametreler

  • socketId

    sayı

    socketId.

disconnect()

chrome.socket.disconnect(
  socketId: number,
)

Prizin bağlantısını keser. UDP soketlerinde disconnect bir işlem değildir ancak çağrılması güvenlidir.

Parametreler

  • socketId

    sayı

    socketId.

getInfo()

Promise
chrome.socket.getInfo(
  socketId: number,
  callback?: function,
)

Belirtilen soketin durumunu alır.

Parametreler

  • socketId

    sayı

    socketId.

  • geri çağırma

    işlev isteğe bağlı

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

    (result: SocketInfo) => void

İadeler

  • Promise<SocketInfo>

    Chrome 121 ve sonraki sürümler

    Sözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

getJoinedGroups()

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

Soketin şu anda bağlı olduğu çoklu yayın grubu adreslerini alın.

Parametreler

  • socketId

    sayı

    socketId.

  • geri çağırma

    işlev

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

    (groups: string[]) => void

    • groups

      dize[]

getNetworkList()

Promise
chrome.socket.getNetworkList(
  callback?: function,
)

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

Parametreler

İadeler

  • Promise<NetworkInterface[]>

    Chrome 121 ve sonraki sürümler

    Sözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini 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. Soket, UDP türünde olmalı ve bu yöntem çağrılmadan önce yerel bir bağlantı noktasına bağlanmış olmalıdır.

Parametreler

  • socketId

    sayı

    socketId.

  • 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ı

leaveGroup()

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

Daha önce katıldığınız çoklu yayın grubundan joinGroup'ü kullanarak ayrılın. Soketi yok etmeden veya çıkmadan önce çoklu yayın grubundan ayrılmanız gerekmez. Bu işlev, işletim sistemi tarafından otomatik olarak çağrılır.

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ı

    socketId.

  • 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ı

listen()

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

Bu yöntem yalnızca TCP soketlerinde geçerlidir. Belirtilen bağlantı noktasında ve adreste bağlantıları dinler. Bu işlem, soketi etkili bir şekilde sunucu soketi haline getirir ve istemci soket işlevleri (bağlantı, okuma, yazma) artık bu sokette kullanılamaz.

Parametreler

  • socketId

    sayı

    socketId.

  • adres

    dize

    Yerel makinenin adresi.

  • bağlantı noktası

    sayı

    Yerel makinenin bağlantı noktası.

  • iş listesi

    number isteğe bağlı

    Soketin 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ı soketten veri okur.

Parametreler

  • socketId

    sayı

    socketId.

  • bufferSize

    number isteğe bağlı

    Okuma arabellek 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 soketi üzerinden veri alır.

Parametreler

  • socketId

    sayı

    socketId.

  • bufferSize

    number 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ı için kısıtlamalar ve parametreler.

  • 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 soketi üzerindeki verileri belirtilen adrese ve bağlantı noktasına gönderir.

Parametreler

  • socketId

    sayı

    socketId.

  • 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 etkin kalma işlevini etkinleştirir veya devre dışı bırakır.

Parametreler

  • socketId

    sayı

    socketId.

  • enable

    boolean

    Doğru ise keep-alive işlevini etkinleştirin.

  • gecikme

    number isteğe bağlı

    Alınan son veri paketi ile ilk keepalive probu arasındaki gecikme saniyelerini 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üp dönmeyeceğini ayarlayın.

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öntemi çağırmak için çoklu yayın izinleri gerekmez.

Parametreler

  • socketId

    sayı

    socketId.

  • 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ı

setMulticastTimeToLive()

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

Çoklu yayın grubuna gönderilen çoklu yayın paketlerinin yaşam süresini ayarlayın.

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

Parametreler

  • socketId

    sayı

    socketId.

  • 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 ayarlar veya temizler. TCP_NODELAY ayarlandığında Nagle algoritması devre dışı bırakılır.

Parametreler

  • socketId

    sayı

    socketId.

  • noDelay

    boolean

    Doğru ise Nagle algoritmasını devre dışı bırakı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ı sokete veri yazar.

Parametreler

  • socketId

    sayı

    socketId.

  • veri

    ArrayBuffer

    Yazılacak veriler.

  • geri çağırma

    işlev

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

    (writeInfo: WriteInfo) => void