कभी-कभी आपको किसी बाहरी वेबसाइट को पिंग करने की आवश्यकता हो सकती है और जांच कर सकते हैं कि यह चालू है या नहीं, इससे पहले कि आप उस पर कोई प्रसंस्करण या आग का अनुरोध करें।
यहां हम देखेंगे कि कैसे जांचा जाता है कि बाहरी वेबसाइट चल रही है या नहीं।
आइए नया प्रोजेक्ट बनाकर देखें
चरण 1 − ओपन एक्सकोड → नया प्रोजेक्ट → सिंगल व्यू एप्लिकेशन → आइए इसे "पिंगमे" नाम दें
चरण 2 − ViewController.swift खोलें और checkIsConnectedToNetwork() फ़ंक्शन जोड़ें और निम्न कोड जोड़ें।
func checkIsConnectedToNetwork() { चलो hostUrl:String ="https://google.com" if url =URL(string:hostUrl) { var request =URLRequest(url:url) request.httpMethod ="HEAD" URLSession (कॉन्फ़िगरेशन:.डिफ़ॉल्ट) .डेटाटास्क (साथ:अनुरोध) {(_, प्रतिक्रिया, त्रुटि) -> गार्ड त्रुटि में शून्य ==शून्य अन्य {प्रिंट ("त्रुटि:", त्रुटि ?? "") वापसी} गार्ड (प्रतिक्रिया के रूप में? HTTPURLResponse)? .statusCode ==200 और {प्रिंट ("होस्ट इज डाउन") रिटर्न} प्रिंट ("होस्ट इज अप एंड रनिंग") } .resume() }}
चरण 3 - अब इस फ़ंक्शन को viewDidLoad विधि से कॉल करें।
आपका अंतिम कोड इस तरह दिखना चाहिए
<पूर्व>आयात करें UIKitclass ViewController:UIViewController { ओवरराइड func viewDidLoad() {super.viewDidLoad() // दृश्य लोड करने के बाद कोई अतिरिक्त सेटअप करें, आमतौर पर एक निब से। self.checkIsConnectedToNetwork() } func checkIsConnectedToNetwork() { चलो hostUrl:String ="https://google.com" अगर url =URL (स्ट्रिंग:hostUrl) { var request =URLRequest (url:url) request.httpMethod =" HEAD" URLSession(configuration:.default) .dataTask(with:request) {(_, response, error) -> Void in Guard error ==nil else {print("Error:", error ?? "") return} गार्ड (प्रतिक्रिया के रूप में? HTTPURLResponse)? .statusCode ==200 और {प्रिंट ("होस्ट नीचे है") वापसी} प्रिंट ("होस्ट ऊपर और चल रहा है")} .resume() }}}जब आप उपरोक्त कोड चलाते हैं तो आप देख सकते हैं ("होस्ट ऊपर और चल रहा है") आपके कंसोल पर मुद्रित है।
आप वैकल्पिक रूप से UI पर एक बटन बना सकते हैं और उस बटन के टैप पर एक अनुरोध सक्रिय कर सकते हैं और टेक्स्टफ़ील्ड पर भी प्रिंट कर सकते हैं।