次のコードはうまくいきますが、データ接続が遅すぎるとタイムアウトを追加する必要があります。Swift 3 URLセッション - URLとのタイムアウトを追加する
func preload(){
let url = URL(string: "https://example.com/loadteams.php")
let data = try? Data(contentsOf: url!)
if data == nil{
showAlert()
}else{
values = try! JSONSerialization.jsonObject(with: data!, options: JSONSerialization.ReadingOptions.mutableContainers) as! [[String : AnyObject]]
}
}
私はこのにURLSessionを持参する必要がありますが、私はそうする方法がわからない、私はそれが線に沿って何かする必要があります理解を前提としています。
let urlconfig = URLSessionConfiguration.default
urlconfig.timeoutIntervalForRequest = 5
urlconfig.timeoutIntervalForResource = 5
self.session = URLSession(configuration: urlconfig, delegate: self.delegates, delegateQueue: nil)
これは
Alamofireのようなネットワーキングフレームワークを使用するのはどうですか?すべての可能性と方法を解決する、堅牢で使いやすいライブラリです。これは、異なるネットワーキング状況で適用されると多くのエラーにつながる可能性があります。 – pedrouan
私はそれを助けることができれば、現時点でどのフレームワークも使用したくないのです。 – adamprocter