chrome.sockets.tcp

ब्यौरा

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

मेनिफ़ेस्ट

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

"sockets"

टाइप

CreateInfo

प्रॉपर्टी

  • socketId

    संख्या

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

DnsQueryType

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

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

Enum

"कोई भी"

"ipv4"

"ipv6"

ReceiveErrorInfo

प्रॉपर्टी

  • resultCode

    संख्या

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

  • socketId

    संख्या

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

ReceiveInfo

प्रॉपर्टी

  • डेटा

    अरेबफ़र

    bufferSize के अधिकतम आकार वाला डेटा मिला.

  • socketId

    संख्या

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

SecureOptions

प्रॉपर्टी

SendInfo

प्रॉपर्टी

  • bytesSent

    नंबर वैकल्पिक

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

  • resultCode

    संख्या

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

SocketInfo

प्रॉपर्टी

  • bufferSize

    नंबर वैकल्पिक

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

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

    बूलियन

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

  • localAddress

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

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

  • localPort

    नंबर वैकल्पिक

    अगर मौजूदा सॉकेट कनेक्ट है, तो उसका लोकल पोर्ट होता है.

  • नाम

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

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

  • रोका गया

    बूलियन

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

  • peerAddress

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

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

  • peerPort

    नंबर वैकल्पिक

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

  • अनवरत

    बूलियन

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

  • socketId

    संख्या

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

SocketProperties

प्रॉपर्टी

  • bufferSize

    नंबर वैकल्पिक

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

  • नाम

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

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

  • अनवरत

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

    इस फ़्लैग से पता चलता है कि ऐप्लिकेशन के इवेंट पेज के अनलोड होने पर, सॉकेट को खुला छोड़ दिया जाता है या नहीं. (ऐप्लिकेशन लाइफ़साइकल मैनेज करना देखें). डिफ़ॉल्ट वैल्यू "गलत" है. ऐप्लिकेशन लोड होने पर, परसिस्टेंट=true के साथ पहले से खोले गए किसी भी सॉकेट को 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

रिटर्न

  • प्रॉमिस<void>

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

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

connect()

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

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

पैरामीटर

  • socketId

    संख्या

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

  • peerAddress

    स्ट्रिंग

    रिमोट मशीन का पता. डीएनएस नेम, आईपीवी4, और आईपीवी6 फ़ॉर्मैट काम करते हैं.

  • 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&lt;CreateInfo&gt;

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

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

disconnect()

प्रॉमिस
chrome.sockets.tcp.disconnect(
  socketId: number,
  callback?: function,
)

इससे सॉकेट डिसकनेक्ट हो जाता है.

पैरामीटर

  • socketId

    संख्या

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

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    () => void

रिटर्न

  • प्रॉमिस<void>

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

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

getInfo()

प्रॉमिस
chrome.sockets.tcp.getInfo(
  socketId: number,
  callback?: function,
)

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

पैरामीटर

  • socketId

    संख्या

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

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (socketInfo: SocketInfo) => void

    • socketInfo

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

रिटर्न

  • Promise&lt;SocketInfo&gt;

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

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

getSockets()

प्रॉमिस
chrome.sockets.tcp.getSockets(
  callback?: function,
)

ऐप्लिकेशन के मालिकाना हक वाले हाल ही में खोले गए सॉकेट की सूची लाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      सॉकेट की जानकारी वाले ऑब्जेक्ट की कैटगरी.

रिटर्न

  • Promise&lt;SocketInfo[]&gt;

    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

    संख्या

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

  • डेटा

    अरेबफ़र

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

  • कॉलबैक

    फ़ंक्शन

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

    (sendInfo: SendInfo) => void

    • sendInfo

      send तरीके का नतीजा.

setKeepAlive()

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

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

पैरामीटर

  • socketId

    संख्या

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

  • चालू करें

    बूलियन

    अगर सही हो, तो कीप-अलाइव की सुविधा को चालू करें.

  • विलंब

    नंबर वैकल्पिक

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

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

setNoDelay()

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

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

पैरामीटर

  • socketId

    संख्या

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

  • noDelay

    बूलियन

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

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

setPaused()

प्रॉमिस
chrome.sockets.tcp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

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

पैरामीटर

  • socketId

    संख्या

  • रोका गया

    बूलियन

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    () => void

रिटर्न

  • प्रॉमिस<void>

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

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

update()

प्रॉमिस
chrome.sockets.tcp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

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

पैरामीटर

  • socketId

    संख्या

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

  • प्रॉपर्टी

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

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    () => void

रिटर्न

  • प्रॉमिस<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