यदि पोर्ट को फ़ायरवॉल या राउटर द्वारा अक्षम किया गया है तो जावास्क्रिप्ट (ब्राउज़र में) में पता लगाना संभव है?क्लाइंट-साइड जावास्क्रिप्ट में पोर्ट उपलब्धता की जांच कैसे करें?
उत्तर
आप केवल देख सकते हैं कि अपेक्षित प्रतिक्रिया है या नहीं।
जावास्क्रिप्ट का उपयोग करते समय किसी को HTTP की सीमाओं में रहना होगा।
बेशक आप सर्वर के किसी भी बंदरगाह पर एक अजाक्स अनुरोध भेज सकते हैं और देख सकते हैं कि आपको कोई त्रुटि है या नहीं। यदि आप वर्तमान मशीन के लिए पोर्ट की जांच करना चाहते हैं तो शायद "लोकलहोस्ट: 843" पर एक अनुरोध भेजना मदद कर सकता है।
लेकिन त्रुटि कुछ अन्य कारणों से हो सकती है और आवश्यक रूप से फ़ायरवॉल समस्या नहीं हो सकती है।
हमें आपकी सहायता करने के लिए अधिक जानकारी चाहिए।
मेरे पास एक फ्लैश पॉलिसी सर्वर है, लेकिन अगर पोर्ट 843 उपलब्ध नहीं है, तो मैं फ्लैश ऐपलेट लोड नहीं करना चाहता हूं। –
नहीं, शुद्ध जावास्क्रिप्ट के साथ यह संभव नहीं है (विशिष्ट बंदरगाहों के लिए http अनुरोध करने के अलावा, लेकिन उन परिणामों का मतलब थोड़ा कम है), आप क्या कर सकते हैं हालांकि बाहर से (दूसरे शब्दों में आपके सर्वर) की जांच है या नहीं विशिष्ट बंदरगाह खुला है। एक अन्य विकल्प जावा ऐपलेट या ब्राउज़र प्लगइन का उपयोग करना होगा जो आपके लिए यह कर सकता है यदि आप वास्तव में की आवश्यकता है, तो इस मामले में ऐसे कई ओपन सोर्स टूल्स हैं जिन्हें आप शायद पोर्ट कर सकते हैं यदि आपके पास उनके साथ आवश्यक अनुभव है। ध्यान दें कि यह बिल्कुल उपयोगकर्ता के अनुकूल नहीं है। (किसी भी तरह से, यह उपयोगी होगा यदि आप सटीक परिदृश्य का वर्णन करेंगे जहां आपको इसकी आवश्यकता है, क्योंकि एक पूरी तरह से अलग समाधान हो सकता है।)
मेरे पास एक फ्लैश पॉलिसी सर्वर है, लेकिन अगर पोर्ट 843 उपलब्ध नहीं है, तो मैं फ्लैश ऐपलेट लोड नहीं करना चाहता हूं। –
उस स्थिति में मैं आपको फ्लैश ऐपलेट लोड करने की सलाह दूंगा, और यदि यह काम नहीं कर सकता है और उपयोगकर्ता को फीडबैक प्रदान करता है तो इस पृष्ठ पर कॉलबैक करें (इस मामले में यह जावास्क्रिप्ट के बजाए फ्लैश कार्यक्षमता के बारे में है जहां यह नहीं है ' टी संभव है) (और मुझे नहीं पता कि फ्लैश में क्या है और संभव नहीं है।)। –
यदि आप jQuery का उपयोग करने के लिए पर्याप्त लचीले हैं, तो यह Answer by me देखें। यह न केवल बंदरगाह की उपलब्धता की जांच करेगा, बल्कि यह भी कि रिमोट से सफलता प्रतिक्रिया कोड 200 आ रहा है (या कोई भी, मेरा मतलब है कि यह क्रॉस-डोमेन भी समर्थन करता है) सर्वर। यहां समाधान भी दे रहा है। मैं यहां पोर्ट 843 के लिए जांच करूँगा।
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript" src="jquery-1.7.2-min.js"></script>
</head>
<body>
<script type"text/javascript">
var isAccessible = null;
function checkConnection() {
/*make sure you host a helloWorld HTML page in the following URL, so that requests are succeeded with 200 status code*/
var url = "http://yourserverIP:843/test/hello.html" ;
$.ajax({
url: url,
type: "get",
cache: false,
dataType: 'jsonp', // it is for supporting crossdomain
crossDomain : true,
asynchronous : false,
jsonpCallback: 'deadCode',
timeout : 1500, // set a timeout in milliseconds
complete : function(xhr, responseText, thrownError) {
if(xhr.status == "200") {
isAccessible = true;
success(); // yes response came, execute success()
}
else {
isAccessible = false;
failure(); // this will be executed after the request gets timed out due to blockage of ports/connections/IPs
}
}
});
}
$(document).ready(function() {
checkConnection(); // here I invoke the checking function
});
</script>
</body>
</html>
इसने मुझे यह देखने के लिए प्रेरित किया कि क्या यह विधि किसी समस्या पर लागू होगी, जहां हम एक बंदरगाह पिंग करने का प्रयास कर रहे थे, जिसमें दूसरी तरफ श्रोता नहीं हो सकता था। समस्या यह थी कि जब कोई श्रोता नहीं होता था तब क्रोम हमेशा एक त्रुटि को लॉग करता था जब भी कोशिश/पकड़ में xhr अनुरोध लपेटता था .. एक हत्यारा नहीं बल्कि अभी भी बदसूरत है। सफलता और त्रुटि ब्लॉक को हटाकर और पूरे ब्लॉक में प्रतिक्रिया को संभालने के द्वारा, जैसा कि आपने यहां किया था, हमने कंसोल संदेश से परहेज किया! मैं अभी भी एसिंक कॉल के साथ ऐसा करने में सक्षम था। कोड के लिए धन्यवाद। – likestoski
- 1. एंड्रॉइड में इंटरनेट कनेक्शन की उपलब्धता की जांच कैसे करें?
- 2. डोमेन उपलब्धता की जांच करें जावा
- 3. जावास्क्रिप्ट टकराव की जांच
- 4. फ़ीचर-डिटेक्ट: जावास्क्रिप्ट में उत्परिवर्तन-घटना उपलब्धता?
- 5. क्लाइंटसाइड और सर्वरसाइड
- 6. जावास्क्रिप्ट प्रदर्शन: पेज को धीमा करने की जांच कैसे करें?
- 7. मेरे होस्टिंग सर्वर से एपीएनएस पोर्ट 2195 की कनेक्टिविटी की जांच कैसे करें?
- 8. smarty में पुनरावृत्ति की जांच कैसे करें?
- 9. नेटवर्क पोर्ट एक्सेस की जांच कैसे करें और उपयोगी संदेश प्रदर्शित करें?
- 10. आप कई वेबसाइटों की उपलब्धता की निगरानी कैसे करते हैं
- 11. सीएपी प्रमेय की "उपलब्धता" को कैसे समझें?
- 12. कस्टम सत्यापनकर्ता क्लाइंटसाइड
- 13. जेएस में शून्य और अपरिभाषित दोनों की जांच कैसे करें?
- 14. जावास्क्रिप्ट में Activex का उपयोग किए बिना क्लाइंटसाइड से फ़ाइल आकार कैसे प्राप्त करें?
- 15. IE में जावास्क्रिप्ट का उपयोग कर क्लाइंटसाइड से फ़ाइल आकार कैसे प्राप्त करें?
- 16. मैं जावास्क्रिप्ट में स्वरों की जांच कैसे करूं?
- 17. पर्ल में इंटरनेट कनेक्शन की उपस्थिति की जांच कैसे करें?
- 18. डेटा फॉर्म प्राप्त करें बाहरी यूआरएल क्लाइंटसाइड
- 19. मैं जावा में इंटरनेट की उपलब्धता का परीक्षण कैसे करूं?
- 20. आईओएस gui स्वचालन में तत्व गुणों की जांच कैसे करें?
- 21. लगातार जावा में परिवर्तन की जांच करें?
- 22. जावास्क्रिप्ट के साथ ब्राउज़र सीएसएस संपत्ति समर्थन की जांच करें?
- 23. सही आकार की जांच कैसे करें?
- 24. एनएसएसटींग की जांच कैसे करें '%' या नहीं?
- 25. आर भीतर ओएस की जांच कैसे करें
- 26. संपर्क कैसे है छवि की जांच करें?
- 27. पायथन - सिस्टम लोड की जांच कैसे करें?
- 28. वास्तविक बिटबैक आदेशों की जांच कैसे करें
- 29. एसएमएल परिवर्तनीय प्रकार की जांच कैसे करें?
- 30. MongoDB अस्तित्व की जांच कैसे करें
किस तरह का जावास्क्रिप्ट? ब्राउज़र में? सर्वर पर? किस तरह का बंदरगाह? सुनने या जोड़ने के लिए? स्थानीय या दूरस्थ? – Thilo
मैं इसे एक ब्राउज़र में पहचानना चाहता हूं। उदाहरण के लिए पोर्ट 843. –
मेरे पास एक फ्लैश पॉलिसी सर्वर है, लेकिन अगर पोर्ट 843 उपलब्ध नहीं है, तो मैं फ्लैश ऐपलेट लोड नहीं करना चाहता हूं। –