ब्यौरा
टीसीपी और यूडीपी कनेक्शन की मदद से नेटवर्क पर डेटा भेजने और पाने के लिए, chrome.socket
एपीआई का इस्तेमाल करें. ध्यान दें: Chrome 33 और उसके बाद के वर्शन में, इस एपीआई का इस्तेमाल अब sockets.udp
, sockets.tcp
, और sockets.tcpServer
एपीआई के लिए किया जा रहा है.
अनुमतियां
socket
टाइप
AcceptInfo
प्रॉपर्टी
-
resultCode
संख्या
-
socketId
नंबर वैकल्पिक
स्वीकार की गई सॉकेट का आईडी.
CreateInfo
प्रॉपर्टी
-
socketId
संख्या
नए बनाए गए सॉकेट का आईडी.
CreateOptions
NetworkInterface
प्रॉपर्टी
-
पता
स्ट्रिंग
उपलब्ध आईपीवी4/6 पता.
-
नाम
स्ट्रिंग
अडैप्टर का नाम. *nix पर, यह आम तौर पर "auth0", "lo" वगैरह होगा.
-
prefixLength
संख्या
प्रीफ़िक्स की लंबाई
ReadInfo
प्रॉपर्टी
-
डेटा
अरेबफ़र
-
resultCode
संख्या
पहले से मौजूद Read() कॉल से, searchCode का रिस्पॉन्स मिला.
RecvFromInfo
प्रॉपर्टी
-
पता
स्ट्रिंग
रिमोट मशीन का पता.
-
डेटा
अरेबफ़र
-
पोर्ट
संख्या
-
resultCode
संख्या
recvfrom() कॉल से मिला रिज़ल्टकोड.
SecureOptions
प्रॉपर्टी
-
tlsVersion
TLSVersionConstraints ज़रूरी नहीं
SocketInfo
प्रॉपर्टी
-
कनेक्ट किया गया
बूलियन
दिया गया सॉकेट कनेक्ट है या नहीं.
tcp
सॉकेट के लिए, यह नीति सही बनी रहेगी. भले ही, रिमोट पीयर डिसकनेक्ट हो गया हो. सॉकेट को पढ़ने या लिखने के बाद कोई गड़बड़ी हो सकती है. इससे यह पता चलता है कि इस सॉकेट कोdisconnect()
के ज़रिए डिसकनेक्ट किया जाना चाहिए.udp
सॉकेट के लिए, यह सिर्फ़ यह दिखाता है कि पैकेट पढ़ने और लिखने के लिए, डिफ़ॉल्ट रिमोट पता बताया गया है या नहीं. -
localAddress
स्ट्रिंग ज़रूरी नहीं
अगर दिया गया सॉकेट बाइंड या कनेक्ट है, तो उसका लोकल आईपीवी4/6 पता होता है.
-
localPort
नंबर वैकल्पिक
अगर दिया गया सॉकेट बाउंड या कनेक्ट है, तो उसका लोकल पोर्ट होता है.
-
peerAddress
स्ट्रिंग ज़रूरी नहीं
अगर मौजूदा सॉकेट कनेक्ट है, तो मिलते-जुलते ऐप्लिकेशन का IPv4/6 पता शामिल होता है.
-
peerPort
नंबर वैकल्पिक
अगर मौजूदा सॉकेट कनेक्ट है, तो इसमें कनेक्ट किए गए मिलते-जुलते ऐप्लिकेशन का पोर्ट शामिल होता है.
-
socketType
पास की गई सॉकेट का टाइप. यह
tcp
याudp
होगा.
SocketType
Enum
"tcp"
"udp"
TLSVersionConstraints
प्रॉपर्टी
-
अधिकतम
स्ट्रिंग ज़रूरी नहीं
-
कम से कम
स्ट्रिंग ज़रूरी नहीं
TLS के स्वीकार किए जाने वाले कम से कम और ज़्यादा से ज़्यादा वर्शन.
tls1.2
याtls1.3
का इस्तेमाल किया जा सकता है.tls1
औरtls1.1
वैल्यू अब काम नहीं करतीं. अगरmin
को इनमें से किसी भी वैल्यू पर सेट किया गया है, तो उसे बिना किसी सूचना केtls1.2
के तौर पर सेट कर दिया जाएगा. अगरmax
को इनमें से किसी एक वैल्यू या किसी ऐसी वैल्यू पर सेट किया गया है जिसकी पहचान नहीं की जा सकी, तो उसे अनदेखा कर दिया जाएगा.
WriteInfo
प्रॉपर्टी
-
bytesWritten
संख्या
भेजे गए बाइट की संख्या या नेगेटिव गड़बड़ी कोड.
तरीके
accept()
chrome.socket.accept(
socketId: number,
callback: function,
)
यह तरीका सिर्फ़ टीसीपी सॉकेट पर लागू होता है. इस लिसनिंग सर्वर सॉकेट पर किसी कनेक्शन को स्वीकार किए जाने पर, कॉल किए जाने वाले कॉलबैक फ़ंक्शन को रजिस्टर करता है. 'सुनें' को पहले कॉल किया जाना चाहिए. अगर पहले से ही कोई स्वीकार कॉलबैक चालू है, तो इस कॉलबैक को रिज़ल्ट कोड के तौर पर गड़बड़ी के साथ तुरंत शुरू कर दिया जाएगा.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(acceptInfo: AcceptInfo) => void
-
acceptInfo
-
bind()
chrome.socket.bind(
socketId: number,
address: string,
port: number,
callback: function,
)
सॉकेट के लिए स्थानीय पते को बाइंड करता है. फ़िलहाल, इस पर टीसीपी सॉकेट काम नहीं करता.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
पता
स्ट्रिंग
लोकल मशीन का पता.
-
पोर्ट
संख्या
लोकल मशीन का पोर्ट.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
connect()
chrome.socket.connect(
socketId: number,
hostname: string,
port: number,
callback: function,
)
सॉकेट को रिमोट मशीन से कनेक्ट करता है (tcp
सॉकेट के लिए). udp
सॉकेट के लिए, यह डिफ़ॉल्ट पता सेट करता है कि read()
और write()
कॉल के लिए पैकेट को कौनसे पैकेट भेजे जाते हैं और उनसे पढ़े जाते हैं.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
hostname
स्ट्रिंग
रिमोट मशीन का होस्टनेम या आईपी पता.
-
पोर्ट
संख्या
रिमोट मशीन का पोर्ट.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
create()
chrome.socket.create(
type: SocketType,
options?: CreateOptions,
callback?: function,
)
तय टाइप की ऐसी सॉकेट बनाता है जो बताई गई रिमोट मशीन से कनेक्ट होगी.
पैरामीटर
-
टाइप
बनाए जाने वाले सॉकेट का टाइप.
tcp
याudp
होना चाहिए. -
विकल्प
CreateOptions ज़रूरी नहीं
सॉकेट के विकल्प.
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(createInfo: CreateInfo) => void
-
createInfo
-
रिटर्न
-
Promise<CreateInfo>
Chrome 121 और उसके बाद वाले वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. दूसरे प्लैटफ़ॉर्म को कॉलबैक इस्तेमाल करने होते हैं.
destroy()
chrome.socket.destroy(
socketId: number,
)
सॉकेट को नष्ट कर देता है. बनाई गई हर सॉकेट को, इस्तेमाल के बाद मिटा दिया जाना चाहिए.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
disconnect()
chrome.socket.disconnect(
socketId: number,
)
इससे सॉकेट डिसकनेक्ट हो जाता है. UDP सॉकेट के लिए, disconnect
एक काम नहीं करता है, लेकिन कॉल करने में सुरक्षित है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
getInfo()
chrome.socket.getInfo(
socketId: number,
callback?: function,
)
दिए गए सॉकेट की स्थिति को हासिल करता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(result: SocketInfo) => void
-
नतीजा
-
रिटर्न
-
Promise<SocketInfo>
Chrome 121 और उसके बाद वाले वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. दूसरे प्लैटफ़ॉर्म को कॉलबैक इस्तेमाल करने होते हैं.
getJoinedGroups()
chrome.socket.getJoinedGroups(
socketId: number,
callback: function,
)
मल्टीकास्ट ग्रुप के वे पते पाएं जिनसे सॉकेट अभी जुड़ा है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(groups: string[]) => void
-
समूह
स्ट्रिंग[]
-
getNetworkList()
chrome.socket.getNetworkList(
callback?: function,
)
इस सिस्टम पर मौजूद लोकल अडैप्टर के बारे में जानकारी हासिल करता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन वैकल्पिक
callback
पैरामीटर ऐसा दिखता है:(result: NetworkInterface[]) => void
-
नतीजा
-
रिटर्न
-
Promise<NetworkInterface[]>
Chrome 121 और उसके बाद वाले वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. दूसरे प्लैटफ़ॉर्म को कॉलबैक इस्तेमाल करने होते हैं.
joinGroup()
chrome.socket.joinGroup(
socketId: number,
address: string,
callback: function,
)
मल्टीकास्ट ग्रुप में शामिल हों और उस ग्रुप से पैकेट पाना शुरू करें. सॉकेट UDP प्रकार का होना चाहिए और इस पद्धति को कॉल करने से पहले किसी स्थानीय पोर्ट से बाध्य होना चाहिए.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
पता
स्ट्रिंग
शामिल होने के लिए ग्रुप का पता. डोमेन नाम समर्थित नहीं हैं.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
leaveGroup()
chrome.socket.leaveGroup(
socketId: number,
address: string,
callback: function,
)
joinGroup
का इस्तेमाल करके, पहले मल्टीकास्ट ग्रुप में शामिल हुए लोगों को छोड़ें. सॉकेट को नष्ट करने या उससे बाहर निकलने से पहले, मल्टीकास्ट ग्रुप को छोड़ने की ज़रूरत नहीं है. ओएस, इसे अपने-आप कॉल करता है.
ग्रुप छोड़ने पर, राऊटर स्थानीय होस्ट को मल्टीकास्ट डेटाग्राम नहीं भेज पाएगा. ऐसा होने पर, यह मानकर चलें कि होस्ट की कोई दूसरी प्रोसेस अब भी ग्रुप में शामिल नहीं है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
पता
स्ट्रिंग
छोड़ने के लिए ग्रुप का पता. डोमेन नाम समर्थित नहीं हैं.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
listen()
chrome.socket.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
)
यह तरीका सिर्फ़ टीसीपी सॉकेट पर लागू होता है. तय किए गए पोर्ट और पते पर कनेक्शन के लिए सुनता है. इससे यह सर्वर सॉकेट बन जाता है और क्लाइंट सॉकेट फ़ंक्शन (कनेक्ट करना, पढ़ना, लिखना) का इस्तेमाल अब इस सॉकेट पर नहीं किया जा सकता.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
पता
स्ट्रिंग
लोकल मशीन का पता.
-
पोर्ट
संख्या
लोकल मशीन का पोर्ट.
-
बैकलॉग
नंबर वैकल्पिक
सॉकेट की सुनने की सूची की अवधि.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
read()
chrome.socket.read(
socketId: number,
bufferSize?: number,
callback: function,
)
दी गई कनेक्ट की गई सॉकेट से डेटा को पढ़ता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
bufferSize
नंबर वैकल्पिक
रीड बफ़र का साइज़.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(readInfo: ReadInfo) => void
-
readInfo
-
recvFrom()
chrome.socket.recvFrom(
socketId: number,
bufferSize?: number,
callback: function,
)
यह दिए गए यूडीपी सॉकेट से डेटा हासिल करता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
bufferSize
नंबर वैकल्पिक
पाने का बफ़र साइज़.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(recvFromInfo: RecvFromInfo) => void
-
recvFromInfo
-
secure()
chrome.socket.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
कनेक्ट किए गए टीसीपी क्लाइंट सॉकेट पर TLS क्लाइंट कनेक्शन शुरू करें.
पैरामीटर
-
socketId
संख्या
कनेक्ट किया गया सॉकेट, जिसका इस्तेमाल करना है.
-
विकल्प
SecureOptions ज़रूरी नहीं
TLS कनेक्शन के लिए कंस्ट्रेंट और पैरामीटर.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
sendTo()
chrome.socket.sendTo(
socketId: number,
data: ArrayBuffer,
address: string,
port: number,
callback: function,
)
दिए गए यूडीपी सॉकेट पर दिए गए डेटा को दिए गए पते और पोर्ट पर भेजता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
डेटा
अरेबफ़र
लिखने के लिए डेटा.
-
पता
स्ट्रिंग
रिमोट मशीन का पता.
-
पोर्ट
संख्या
रिमोट मशीन का पोर्ट.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(writeInfo: WriteInfo) => void
-
writeInfo
-
setKeepAlive()
chrome.socket.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
इससे टीसीपी कनेक्शन के लिए कीप-अलाइव की सुविधा को चालू या बंद किया जाता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
चालू करें
बूलियन
अगर सही हो, तो कीप-अलाइव की सुविधा को चालू करें.
-
विलंब
नंबर वैकल्पिक
मिले हुए आखिरी डेटा पैकेट और कीपअलाइव (चालू रखें) की पहली जांच के बीच की देरी को सेकंड के तौर पर सेट करें. डिफ़ॉल्ट संख्या 0 है.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: boolean) => void
-
नतीजा
बूलियन
-
setMulticastLoopbackMode()
chrome.socket.setMulticastLoopbackMode(
socketId: number,
enabled: boolean,
callback: function,
)
सेट करें कि होस्ट से मल्टीकास्ट ग्रुप को भेजे गए मल्टीकास्ट पैकेट, होस्ट पर वापस लूप किए जाएंगे या नहीं.
ध्यान दें: Windows और Unix जैसे सिस्टम के लिए setMulticastLoopbackMode
के काम करने का तरीका थोड़ा अलग होता है. यह गड़बड़ी सिर्फ़ तब होती है, जब एक होस्ट पर एक से ज़्यादा ऐप्लिकेशन एक ही मल्टीकास्ट ग्रुप में शामिल होते हैं. साथ ही, मल्टीकास्ट लूपबैक मोड में अलग-अलग सेटिंग होती हैं. Windows पर, लूपबैक बंद वाले ऐप्लिकेशन लूपबैक पैकेट नहीं पा सकेंगे; यूनिक्स-जैसे सिस्टम पर होने पर, लूपबैक बंद वाले ऐप्लिकेशन, एक ही होस्ट पर मौजूद अन्य ऐप्लिकेशन को लूपबैक पैकेट नहीं भेजेंगे. एमएसडीएन देखें: http://goo.gl/6vqbj
इस तरीके को कॉल करने के लिए, मल्टीकास्ट की अनुमतियों की ज़रूरत नहीं है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
चालू किया गया
बूलियन
बताएं कि लूपबैक मोड चालू करना है या नहीं.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
setMulticastTimeToLive()
chrome.socket.setMulticastTimeToLive(
socketId: number,
ttl: number,
callback: function,
)
मल्टीकास्ट ग्रुप को भेजे गए मल्टीकास्ट पैकेट के लिए, टाइम-टू-लाइव डेटा सेट करें.
इस तरीके को कॉल करने के लिए, मल्टीकास्ट की अनुमतियों की ज़रूरत नहीं है.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
टीटीएल
संख्या
लाइव जाने के कुल समय की वैल्यू.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: number) => void
-
नतीजा
संख्या
-
setNoDelay()
chrome.socket.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
यह टीसीपी कनेक्शन के लिए, TCP_NODELAY
को सेट करता है या हटाता है. TCP_NODELAY
के सेट होने पर Nagle का एल्गोरिदम बंद हो जाएगा.
पैरामीटर
-
socketId
संख्या
सॉकेट आईडी.
-
noDelay
बूलियन
अगर सही है, तो Nagle का एल्गोरिदम बंद हो जाता है.
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(result: boolean) => void
-
नतीजा
बूलियन
-
write()
chrome.socket.write(
socketId: number,
data: ArrayBuffer,
callback: function,
)
दिए गए कनेक्ट किए गए सॉकेट पर डेटा लिखता है.