मुझे जो कुछ करने की कोशिश कर रहा है उस पर थोड़ा सा पृष्ठभूमि दें।जावास्क्रिप्ट के साथ एक आईपी के लिए एक टीसीपी कनेक्शन करने का कोई तरीका है?
मैं किसी उपकरण (चिप और पिन टर्मिनल) एक स्थानीय आईपी पते है कि है, यह कुछ डेटा प्राप्त करते हैं और यह प्रक्रिया करने के लिए प्रोग्राम किया गया है।
उदाहरण: मैं हेक्स "30 35"
में स्ट्रिंग "05"
भेजता हूं और टर्मिनल इसे पढ़ता है और फिर से शुरू कर देगा।
मैं SockJS-Client का उपयोग कर के साथ-साथ WebSockets में बनाया कोशिश की है।
WebSockets हालांकि का उपयोग कर रहा है कि नोटिस ब्राउज़र भेज रहा है:
GET/HTTP/1.1
Host: IP:PORT
Connection: Upgrade
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket
Origin: MYIP
Sec-WebSocket-Version: 13
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8
Sec-WebSocket-Key: A1CeTMFnQCZv4GNZbLFnyQ==
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
मेरे कोड इस तरह दिखता है:
var exampleSocket = new WebSocket("ws://IP:PORT");
exampleSocket.send("05");
मैं इस के लिए कोड को बदलते हैं:
var exampleSocket = new WebSocket("wss://IP:PORT");
exampleSocket.send("05");
मुझे सिर्फ 3 टैग भेजे गए हैं जो भेजे गए हैं: SYN(0x0016) ETX(0x0003) SOH(0x0001)
अब मुझे यकीन नहीं है कि आपको आने वाले डेटा की व्याख्या करने में सक्षम होने के लिए वेबस्केट सेवर होना चाहिए या नहीं।
SockJS ही है और broswer के बारे में अतिरिक्त जानकारी भेज कर एक ही बात करता है:
GET /info?t=1452272641278 HTTP/1.1
Host: IP:PORT
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36
Origin: MYIP
Accept: */*
Referer: MYIP
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8
तो मुझे लगता है कि मेरे सवाल है। क्या मुझे बस वही भेजने का कोई तरीका है जो मैं चाहता हूं? बिना किसी अतिरिक्त डेटा के?
मैं ऑब्जेक्टिव-सी के साथ ही सी # में इस पूरी कर ली है, मैं बस नहीं यकीन है कि अगर जावास्क्रिप्ट यह कर सकते हैं कर रहा हूँ?
कृपया पूछते हैं कि कुछ भी स्पष्ट नहीं है और मैं स्पष्ट करने की कोशिश करेंगे।
जेएस के माध्यम से स्थानीय नेटवर्क डिवाइस से कनेक्ट करना क्यों महत्वपूर्ण है? सर्वर पर ऐसा करना संभव नहीं होगा और AJAX घटनाओं के माध्यम से लेनदेन का संचालन करना संभव नहीं होगा? – Nathan
किसी अन्य भाषा को चुनें, बस किसी अन्य भाषा के बारे में, और इसके अपेक्षाकृत सीधा, लेकिन (ब्राउज़र) जावास्क्रिप्ट बस डिज़ाइन द्वारा ऐसा नहीं करता है। अन्यथा यह परिलक्षित हमले करने के लिए बच्चे का खेल होगा। – symcbean