บางครั้งคุณอาจต้อง ping เว็บไซต์ภายนอกและตรวจสอบว่าเว็บไซต์ทำงานอยู่หรือไม่ก่อนที่คุณจะดำเนินการประมวลผลหรือดำเนินการตามคำขอดังกล่าว
เราจะมาดูวิธีการตรวจสอบว่าเว็บไซต์ภายนอกทำงานอยู่หรือไม่
เรามาสร้างโปรเจกต์ใหม่กันเถอะ
ขั้นตอนที่ 1 - เปิด Xcode → โครงการใหม่ → แอปพลิเคชั่นมุมมองเดียว → ตั้งชื่อมันว่า "PingMe"
ขั้นตอนที่ 2 - เปิด ViewController.swift และเพิ่มฟังก์ชัน checkIsConnectedToNetwork() และเพิ่มโค้ดต่อไปนี้
func checkIsConnectedToNetwork() {
let hostUrl: String = "https://google.com"
if let url = URL(string: 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
}
guard (response as? HTTPURLResponse)?
.statusCode == 200 else {
print("The host is down")
return
}
print("The host is up and running")
}
.resume()
}
} ขั้นตอนที่ 3 - เรียกใช้ฟังก์ชันนี้จากเมธอด viewDidLoad
รหัสสุดท้ายของคุณควรมีลักษณะดังนี้
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.checkIsConnectedToNetwork()
}
func checkIsConnectedToNetwork() {
let hostUrl: String = "https://google.com"
if let url = URL(string: 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
}
guard (response as? HTTPURLResponse)?
.statusCode == 200 else {
print("The host is down")
return
}
print("The host is up and running")
}
.resume()
}
}
} เมื่อคุณเรียกใช้โค้ดด้านบน คุณจะเห็น ("โฮสต์กำลังทำงานอยู่") ถูกพิมพ์บนคอนโซลของคุณ

คุณสามารถสร้างปุ่มบน UI และเมื่อแตะที่ปุ่มนั้นเพื่อทำการร้องขอ และสามารถพิมพ์บนฟิลด์ข้อความได้เช่นกัน