特定のウェブサイトの到達可能性をチェックする方法は?Swift、特定のウェブサイトに到達可能かどうかを確認
インターネットアクセスのためにWi-Fiネットワークに接続されており、一部のサイトをブロックしています。それらのサイトにアクセスできるかどうかを確認する方法は?
Reachabilityクラスでチェックしましたが、特定のウェブサイトを確認できません。
現在、私はあなたが使用したい初期化子は、そのページに記載されているReachability.swift
特定のウェブサイトの到達可能性をチェックする方法は?Swift、特定のウェブサイトに到達可能かどうかを確認
インターネットアクセスのためにWi-Fiネットワークに接続されており、一部のサイトをブロックしています。それらのサイトにアクセスできるかどうかを確認する方法は?
Reachabilityクラスでチェックしましたが、特定のウェブサイトを確認できません。
現在、私はあなたが使用したい初期化子は、そのページに記載されているReachability.swift
を使用しています。
あなたは、パラメータとしてホスト名を渡す:
init?(hostname: String)
// example
Reachability(hostname: "www.mydomain.com")
ブロックされたサイトにも到達可能であることを示す。 – Meghan
私はベストプラクティスであるかわからないが、私はそうするためにHTTP request
を使用しています。
func checkWebsite(completion: @escaping (Bool) -> Void) {
guard let url = URL(string: "yourURL.com") else { return }
var request = URLRequest(url: url)
request.timeoutInterval = 1.0
let task = URLSession.shared.dataTask(with: request) { data, response, error in
if let error = error {
print("\(error.localizedDescription)")
completion(false)
}
if let httpResponse = response as? HTTPURLResponse {
print("statusCode: \(httpResponse.statusCode)")
// do your logic here
// if statusCode == 200 ...
completion(true)
}
}
task.resume()
}
この答えをチェックアウトhttps://stackoverflow.com/a/9617166/3066450 – ebby94
「到達可能」のあなたの定義は何ですか?ブロックされたサイトであっても、ページがブロックされていることを伝える何らかの種類のページを返す傾向があります。だから基本的なチェックは、ページが "到達可能"であるように見せます。 – rmaddy
@rmaddy:そのタイムアウトが表示されています。 – Meghan