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ılarak sockets.udp, sockets.tcp ve sockets.tcpServer API'leri kullanılmaya başlanacaktır.

İzinler

socket

Türler

AcceptInfo

Özellikler

  • resultCode

    sayı

  • socketId

    sayı 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 değer genellikle "eth0", "lo" vb. olur.

  • prefixLength

    sayı

    Önek uzunluğu

ReadInfo

Özellikler

  • veri

    DiziArabelleği

  • resultCode

    sayı

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

RecvFromInfo

Özellikler

  • adres

    dize

    Uzak makinenin adresi.

  • veri

    DiziArabelleği

  • 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 prizde uzak eşin bağlantısı kesilse bile bu durum aynı kalır. Soketteki okuma veya yazma işlemleri hataya neden olabilir. Bu da söz konusu prizin disconnect() üzerinden bağlantısının kesilmesi gerektiğini gösterir.

    udp yuvalarında bu yalnızca okuma ve yazma paketleri için varsayılan bir uzak adresin belirtilip belirtilmediğini temsil eder.

  • localAddress

    dize isteğe bağlı

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

  • localPort

    sayı isteğe bağlı

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

  • peerAddress

    dize isteğe bağlı

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

  • peerPort

    sayı isteğe bağlı

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

  • socketType

    İletilen yuvanın türü. Bu, tcp veya udp olacak.

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 ayarlanır. 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 sunucu yuvasında bir bağlantı kabul edildiğinde çağrılacak bir geri çağırma işlevi kaydeder. Önce dinlet çağrılmalıdır. Zaten etkin bir geri çağırma varsa bu geri çağırma, resultCode hatasıyla 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,
)

Yuvanın yerel adresini bağlar. Şu anda TCP soketi desteklenmiyor.

Parametreler

  • socketId

    sayı

    socketId.

  • adres

    dize

    Yerel makinenin adresidir.

  • 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 priz için). Bir udp soketinde bu, read() ve write() çağrıları için hangi paketlerin gönderileceği ve okunacağı 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()

Söz 'nı inceleyin.
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

    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 'nı inceleyin.

    Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması gerekir.

destroy()

chrome.socket.destroy(
  socketId: number,
)

Soketi tahrip eder. Oluşturulan her yuva kullanıldıktan sonra imha edilmelidir.

Parametreler

  • socketId

    sayı

    socketId.

disconnect()

chrome.socket.disconnect(
  socketId: number,
)

Prizin bağlantısını keser. UDP soketleri için disconnect bir işlem değildir, ancak güvenle çağrılabilir.

Parametreler

  • socketId

    sayı

    socketId.

getInfo()

Söz 'nı inceleyin.
chrome.socket.getInfo(
  socketId: number,
  callback?: function,
)

Belirli bir yuvanın 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 'nı inceleyin.

    Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması gerekir.

getJoinedGroups()

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

Yuvanın şu anda katıldığı çoklu yayın grup 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()

Söz 'nı inceleyin.
chrome.socket.getNetworkList(
  callback?: function,
)

Bu sistemdeki yerel bağdaştırıcılarla ilgili bilgileri alır.

Parametreler

İadeler

  • Promise<NetworkInterface[]>

    Chrome 121 ve sonraki sürümler 'nı inceleyin.

    Vaatler yalnızca Manifest V3 ve sonraki sürümler için desteklenir. Diğer platformların geri çağırma yapması 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. Bu yöntem çağrılmadan önce, yuva UDP türünde olmalı ve yerel bir bağlantı noktasına bağlı olmalıdır.

Parametreler

  • socketId

    sayı

    socketId.

  • adres

    dize

    Katılınacak 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 kullanarak katılmış olan çoklu yayın grubundan ayrılın. Soketi bozmadan veya çıkış yapmadan önce çoklu yayın grubundan ayrılmanız gerekmez. Bu, işletim sistemi tarafından otomatik olarak çağrılır.

Ana makinede başka bir işlemin gruba katılmadığı varsayıldığında, gruptan ayrıldığınızda yönlendiricinin yerel ana makineye çoklu yayın veri birimleri göndermesi engellenir.

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 yuvaları için geçerlidir. Belirtilen bağlantı noktası ve adresteki bağlantıları dinler. Bu durum, onu sunucu yuvası haline getirir ve istemci yuvası işlevleri (bağlama, okuma, yazma) artık bu yuvada kullanılamaz.

Parametreler

  • socketId

    sayı

    socketId.

  • adres

    dize

    Yerel makinenin adresidir.

  • bağlantı noktası

    sayı

    Yerel makinenin bağlantı noktası.

  • iş listesi

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

    socketId.

  • bufferSize

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

    socketId.

  • bufferSize

    sayı isteğe bağlı

    Alıcı 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 yuvası üzerinden TLS istemci bağlantısı başlatın.

Parametreler

  • socketId

    sayı

    Kullanılacak bağlı yuva.

  • seçenekler

    SecureOptions isteğe bağlı

    TLS bağlantısıyla ilgili 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 soketindeki verileri belirtilen adrese ve bağlantı noktasına gönderir.

Parametreler

  • socketId

    sayı

    socketId.

  • veri

    DiziArabelleği

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

Parametreler

  • socketId

    sayı

    socketId.

  • enable

    boolean

    Doğruysa canlı tutma işlevini etkinleştirin.

  • gecikme

    sayı 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 tekrar döngüye alınıp alınmayacağını ayarlayın.

Not: setMulticastLoopbackMode işletim sisteminin davranışı, Windows ve Unix benzeri sistemlerde biraz farklıdır. Tutarsızlık yalnızca, aynı ana makinede birden fazla uygulamanın aynı çoklu yayın grubuna katılıp çoklu yayın geri dönüş modunda farklı ayarlara sahip olması durumunda ortaya çıkar. Windows'da, geri döngünün devre dışı olduğu uygulamalar geri döngü paketlerini ALMAZ; Unix benzeri sistemlerde, geri döngü kapalı uygulamaları olan uygulamalar geri döngü paketlerini aynı ana bilgisayardaki diğer uygulamalara GÖNDERMEZ. MSDN'ye göz atın: http://goo.gl/6vqbj

Bu yöntemin çağrılması, çoklu yayın izinleri gerektirmez.

Parametreler

  • socketId

    sayı

    socketId.

  • etkin

    boolean

    Geri 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 geçerlilik süresini ayarlayın.

Bu yöntemin çağrılması, çoklu yayın izinleri gerektirmez.

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

Parametreler

  • socketId

    sayı

    socketId.

  • noDelay

    boolean

    True (doğru) ise Nagle'ın 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ı yuvadaki verileri yazar.

Parametreler

  • socketId

    sayı

    socketId.

  • veri

    DiziArabelleği

    Yazılacak veriler.

  • geri çağırma

    işlev

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

    (writeInfo: WriteInfo) => void