chrome.sockets.tcp

ब्यौरा

टीसीपी कनेक्शन का इस्तेमाल करके, नेटवर्क पर डेटा भेजने और पाने के लिए, chrome.sockets.tcp API का इस्तेमाल करें. यह एपीआई, chrome.socket एपीआई में पहले मिले टीसीपी के फ़ंक्शन की जगह लागू होता है.

मेनिफ़ेस्ट

इस एपीआई का इस्तेमाल करने के लिए, मेनिफ़ेस्ट में इन कुंजियों का एलान करना ज़रूरी है.

"sockets"

टाइप

CreateInfo

प्रॉपर्टी

  • socketId

    नंबर

    नई बनाई गई सॉकेट का आईडी. ध्यान रखें कि इस एपीआई से बनाए गए सॉकेट आईडी, अन्य एपीआई से बनाए गए सॉकेट आईडी के साथ काम नहीं करते हैं. जैसे, बंद किए गए [सॉकेट](../socket/) एपीआई.

DnsQueryType

Chrome 103 और इसके बाद के वर्शन

डीएनएस रिज़ॉल्यूशन की प्राथमिकताएं. डिफ़ॉल्ट तौर पर, यह any ओएस कॉन्फ़िगरेशन का इस्तेमाल करता है, जो आईपीवी4 या आईपीवी6 दिखा सकता है. ipv4, आईपीवी4 को ट्रिगर करता है और ipv6, आईपीवी6 को ट्रिगर करता है.

Enum

"ipv4"

"ipv6"

ReceiveErrorInfo

प्रॉपर्टी

  • resultCode

    नंबर

    मौजूदा नेटवर्क कॉल से मिला नतीजा कोड.

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

ReceiveInfo

प्रॉपर्टी

  • डेटा

    ArrayBuffer

    मिला डेटा, जिसका साइज़ ज़्यादा से ज़्यादा bufferSize है.

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

SecureOptions

प्रॉपर्टी

SendInfo

प्रॉपर्टी

  • bytesSent

    नंबर ज़रूरी नहीं

    भेजे गए बाइट की संख्या (अगर नतीजा == 0 हो)

  • resultCode

    नंबर

    मौजूदा नेटवर्क कॉल से मिला नतीजा कोड. नेगेटिव वैल्यू किसी गड़बड़ी को दिखाती है.

SocketInfo

प्रॉपर्टी

  • bufferSize

    नंबर ज़रूरी नहीं

    डेटा पाने के लिए इस्तेमाल किए जाने वाले बफ़र का साइज़. अगर साफ़ तौर पर कोई बफ़र साइज़ नहीं बताया गया है, तो वैल्यू नहीं दी जाएगी.

  • कनेक्ट किया गया

    boolean

    इस फ़्लैग से पता चलता है कि सॉकेट किसी रिमोट पीयर से कनेक्ट है या नहीं.

  • localAddress

    स्ट्रिंग ज़रूरी नहीं

    अगर दिया गया सॉकेट कनेक्ट है, तो उसमें इसका लोकल आईपीवी4/6 पता शामिल होता है.

  • localPort

    नंबर ज़रूरी नहीं

    अगर दिया गया सॉकेट कनेक्ट है, तो उसमें लोकल पोर्ट होता है.

  • नाम

    स्ट्रिंग ज़रूरी नहीं

    सॉकेट से संबद्ध ऐप्लिकेशन-तय स्ट्रिंग.

  • रोका गया

    boolean

    इस फ़्लैग से पता चलता है कि कनेक्ट किया गया सॉकेट, अपने पीयर को और डेटा भेजने से रोकता है या नहीं (setPaused देखें).

  • peerAddress

    स्ट्रिंग ज़रूरी नहीं

    अगर मौजूदा सॉकेट कनेक्ट है, तो उसमें पीयर/ IPv4/6 पता शामिल होता है.

  • peerPort

    नंबर ज़रूरी नहीं

    अगर दिया गया सॉकेट कनेक्ट है, तो उसमें पीयर पोर्ट शामिल है.

  • अनवरत

    boolean

    इस फ़्लैग से पता चलता है कि ऐप्लिकेशन के निलंबित होने पर सॉकेट खुला है या नहीं (SocketProperties.persistent देखें).

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

SocketProperties

प्रॉपर्टी

  • bufferSize

    नंबर ज़रूरी नहीं

    डेटा पाने के लिए इस्तेमाल किए जाने वाले बफ़र का साइज़. डिफ़ॉल्ट वैल्यू 4096 है.

  • नाम

    स्ट्रिंग ज़रूरी नहीं

    सॉकेट से जुड़ा ऐप्लिकेशन-तय स्ट्रिंग.

  • अनवरत

    बूलियन ज़रूरी नहीं

    इस फ़्लैग से पता चलता है कि ऐप्लिकेशन के इवेंट पेज के अनलोड होने पर, सॉकेट खुला है या नहीं (ऐप्लिकेशन लाइफ़साइकल मैनेज करें देखें). डिफ़ॉल्ट वैल्यू "गलत" होती है. ऐप्लिकेशन लोड होने पर, पहले से खोली गई किसी भी पावर सॉकेट को getSockets की मदद से फ़ेच किया जा सकता है.

TLSVersionConstraints

प्रॉपर्टी

  • ज़्यादा से ज़्यादा

    स्ट्रिंग ज़रूरी नहीं

  • मि

    स्ट्रिंग ज़रूरी नहीं

    TLS के स्वीकार किए जाने वाले कम से कम और ज़्यादा से ज़्यादा वर्शन. tls1.2 या tls1.3 का इस्तेमाल किया जा सकता है.

    tls1 और tls1.1 वैल्यू अब काम नहीं करती. अगर min को इनमें से किसी एक वैल्यू पर सेट किया जाता है, तो उसे बिना किसी रुकावट के tls1.2 पर सेट कर दिया जाएगा. अगर max को इनमें से किसी एक वैल्यू या ऐसी वैल्यू पर सेट किया गया है जिसकी पहचान नहीं की जा सकी, तो उसे अनदेखा कर दिया जाएगा.

तरीके

close()

वादा
chrome.sockets.tcp.close(
  socketId: number,
  callback?: function,
)

सॉकेट को बंद करता है और उस पते/पोर्ट को रिलीज़ करता है जिससे सॉकेट जुड़ा होता है. बनाई गई हर सॉकेट, इस्तेमाल के बाद बंद होनी चाहिए. फ़ंक्शन के कॉल होते ही सॉकेट आईडी अब मान्य नहीं रहता. हालांकि, यह गारंटी दी जाती है कि सॉकेट सिर्फ़ तभी बंद होगा, जब कॉलबैक को शुरू किया गया हो.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.

connect()

chrome.sockets.tcp.connect(
  socketId: number,
  peerAddress: string,
  peerPort: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)

सॉकेट को रिमोट मशीन से कनेक्ट करता है. connect कार्रवाई पूरी होने के बाद, साथी ऐप्लिकेशन से डेटा मिलने के बाद onReceive इवेंट इकट्ठा किए जाते हैं. अगर रनटाइम को पैकेट मिलते समय नेटवर्क की कोई गड़बड़ी होती है, तो onReceiveError इवेंट जनरेट होता है. इसके बाद, इस सॉकेट के लिए अब और onReceive इवेंट नहीं दिखाया जाएगा. ऐसा तब तक होगा, जब तक resume तरीके को कॉल नहीं किया जाता.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • peerAddress

    स्ट्रिंग

    रिमोट मशीन का पता. डीएनएस नाम, IPv4, और IPv6 फ़ॉर्मैट काम करते हैं.

  • peerPort

    नंबर

    रिमोट मशीन का पोर्ट.

  • dnsQueryType

    DnsQueryType ज़रूरी नहीं

    Chrome 103 और इसके बाद के वर्शन

    पते के समाधान की प्राथमिकता.

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (result: number)=>void

    • नतीजा

      नंबर

      मौजूदा नेटवर्क कॉल से मिला नतीजा कोड. नेगेटिव वैल्यू किसी गड़बड़ी को दिखाती है.

create()

वादा
chrome.sockets.tcp.create(
  properties?: SocketProperties,
  callback?: function,
)

टीसीपी सॉकेट बनाता है.

पैरामीटर

  • प्रॉपर्टी

    SocketProperties ज़रूरी नहीं

    सॉकेट प्रॉपर्टी (ज़रूरी नहीं).

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (createInfo: CreateInfo)=>void

    • createInfo

      सॉकेट बनाने का नतीजा.

रिटर्न

  • Promise<CreateInfo>

    Chrome 121 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.

disconnect()

वादा
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)

सॉकेट डिसकनेक्ट करता है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.

getInfo()

वादा
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)

दिए गए सॉकेट की स्थिति पता करता है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (socketInfo: SocketInfo)=>void

    • socketInfo

      ऑब्जेक्ट में सॉकेट की जानकारी है.

रिटर्न

  • Promise<SocketInfo>

    Chrome 121 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.

getSockets()

वादा
chrome.sockets.tcp.getSockets(
  callback?: function,
)

ऐप्लिकेशन के मालिकाना हक वाली फ़िलहाल खुली हुई सॉकेट की सूची वापस लाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    (socketInfos: SocketInfo[])=>void

    • socketInfos

      ऑब्जेक्ट का कलेक्शन, जिसमें सॉकेट की जानकारी है.

रिटर्न

  • Promise<SocketInfo[]>

    Chrome 121 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.

secure()

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

कनेक्ट किए गए टीसीपी क्लाइंट सॉकेट पर, TLS क्लाइंट कनेक्शन शुरू करें.

पैरामीटर

  • socketId

    नंबर

    इस्तेमाल करने के लिए, कनेक्ट किया गया मौजूदा सॉकेट.

  • विकल्प

    SecureOptions ज़रूरी नहीं है

    TLS कनेक्शन के लिए पाबंदियां और पैरामीटर.

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (result: number)=>void

    • नतीजा

      नंबर

send()

chrome.sockets.tcp.send(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)

दिए गए टीसीपी सॉकेट पर डेटा भेजता है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • डेटा

    ArrayBuffer

    भेजा जाने वाला डेटा.

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (sendInfo: SendInfo)=>void

    • sendInfo

      send तरीके से मिला नतीजा.

setKeepAlive()

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

इससे टीसीपी कनेक्शन के लिए, सेव रहने वाले फ़ंक्शन की सुविधा चालू या बंद होती है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • enable

    boolean

    सही होने पर, कीप-अलाइव (चालू रखें) की सुविधा को चालू करें.

  • विलंब

    नंबर ज़रूरी नहीं

    मिले हुए आखिरी डेटा पैकेट और पहले कीपअलाइव जांच के बीच देरी सेकंड सेट करें. डिफ़ॉल्ट वैल्यू 0 है.

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (result: number)=>void

    • नतीजा

      नंबर

      मौजूदा नेटवर्क कॉल से मिला नतीजा कोड. नेगेटिव वैल्यू किसी गड़बड़ी को दिखाती है.

setNoDelay()

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

टीसीपी कनेक्शन के लिए TCP_NODELAY को सेट करता है या सेट करता है. TCP_NODELAY के सेट हो जाने पर Nagle का एल्गोरिदम बंद कर दिया जाएगा.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • noDelay

    boolean

    सही होने पर, Nagle का एल्गोरिदम बंद कर देता है.

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (result: number)=>void

    • नतीजा

      नंबर

      मौजूदा नेटवर्क कॉल से मिला नतीजा कोड. नेगेटिव वैल्यू किसी गड़बड़ी को दिखाती है.

setPaused()

वादा
chrome.sockets.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

ऐप्लिकेशन को इसके साथी से मैसेज पाने की सुविधा चालू या बंद करता है. डिफ़ॉल्ट वैल्यू "गलत" है. सॉकेट को रोकने का इस्तेमाल आम तौर पर कोई ऐप्लिकेशन अपने साथी के भेजे गए डेटा को थ्रॉटल करने के लिए करता है. किसी सॉकेट को रोकने पर, कोई onReceive इवेंट नहीं बढ़ाया जाता. जब किसी सॉकेट को कनेक्ट किया जाता है और उससे रोक हटाई जाती है, तो मैसेज मिलने पर onReceive इवेंट फिर से बढ़ जाते हैं.

पैरामीटर

  • socketId

    नंबर

  • रोका गया

    boolean

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.

update()

वादा
chrome.sockets.tcp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

सॉकेट की प्रॉपर्टी को अपडेट करता है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • प्रॉपर्टी

    अपडेट की जाने वाली प्रॉपर्टी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर ऐसा दिखता है:

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.

इवेंट

onReceive

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

किसी दिए गए सॉकेट के लिए डेटा मिल जाने पर इवेंट की जानकारी इकट्ठा की जाती है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (info: ReceiveInfo)=>void

onReceiveError

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

सॉकेट पता और पोर्ट पर डेटा का इंतज़ार करते समय, रनटाइम के दौरान कोई नेटवर्क गड़बड़ी होने पर इवेंट की जानकारी दी गई. यह इवेंट इकट्ठा हो जाने के बाद, सॉकेट paused पर सेट हो जाता है. साथ ही, इस सॉकेट के लिए और onReceive इवेंट नहीं बनाए जाते.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर ऐसा दिखता है:

    (info: ReceiveErrorInfo)=>void