キーボードでタイプしたら検索予測を引っ張ってくる処理を書いています。
しかし、データを受け取るコードで下記のようなwnrappingエラーが出てしまいます。
swift
1Thread 9: Fatal error: Unexpectedly found nil while unwrapping an Optional value
原因のコードは下記のコードですが、
素早くタイプしすぎるとエラーを吐くようです。
これを改善するためにはどうコードを変えていけば良いですか?
swift
1 2 /// 検索予測をDBから取得 3 func getDB(){ 4 5 /// パラメーターに送信情報を追加 6 let params = type_keyword /// タイプしたキーワード(1文字タイプするごとに) 7 8 /// POST送信 9 let urlString = "https://***" 10 let request = NSMutableURLRequest(url: URL(string: urlString)!) 11 request.httpMethod = "POST" 12 request.addValue("application/json", forHTTPHeaderField: "Content-Type") 13 do{ 14 request.httpBody = try JSONSerialization.data(withJSONObject: params, options: .prettyPrinted) 15 let task:URLSessionDataTask = URLSession.shared.dataTask(with: request as URLRequest, completionHandler: {(data,response,error) -> Void in 16 let resultData = String(data: data!, encoding: .utf8)! ///ここでエラーが出る。 17 18 DispatchQueue.main.async{ 19 20 ///ここから検索予測を反映させるVIEWの処理 21 22 } 23 24 }) 25 task.resume() 26 }catch{ 27 print("Error:(error)") 28 } 29 30 } 31
回答1件
あなたの回答
tips
プレビュー