度々ご質問させていただきます。
SWIFTにてアプリケーション開発を行っております。
req.httpBody に条件を入れて検索をかけておりますが、
let top = json as! NSArrayのtopには全件が返ってきてしまいます。
書き方が良くないところがあればご指摘ください。
SWIFT4.0
1 let urlStr = "http://XX.XX.XX.XX/data/GetListData" 2 let encodedURL = urlStr.addingPercentEncoding(withAllowedCharacters: NSCharacterSet.urlQueryAllowed) 3 4 if let url = URL(string: encodedURL!) { 5 let req = NSMutableURLRequest(url: url) 6 7 let id:String = self.txtID.text! 8 let kana:String = self.txtkana.text! 9 let knj:String = self.txtkanji.text! 10 let pkana:String = self.txtpetkana.text! 11 12 let strbody: String = "ID=(id)&KANA=(kana)&KANJI=(knj)&PETKANA=(pkana)" 13 14 print(strbody) 15 req.httpMethod = "POST" 16 req.addValue("application/json", forHTTPHeaderField: "Content-Type") 17 req.httpBody = strbody.data(using: String.Encoding.utf8) 18 19 let task = URLSession.shared.dataTask(with: req as URLRequest, completionHandler: { (data, resp, err) in 20 21 // 受け取ったdataをJSONパース、エラーならcatchへジャンプ 22 do { 23 // dataをJSONパース 24 let json = try JSONSerialization.jsonObject(with: data!, options: JSONSerialization.ReadingOptions.allowFragments) 25 let top = json as! NSArray 26 //メインスレッドで処理を行う 27 DispatchQueue.main.async { 28 //画面遷移を実行 29 self.performSegue(withIdentifier: "toViewSegue", sender: top) 30 } 31 } catch { 32 print (error) 33 let appDelegate = UIApplication.shared.delegate as! AppDelegate 34 appDelegate.showAlert(ttl:"接続エラー",msg:"ネットワークに問題がある可能性があります。",sender: self) 35 return 36 }
回答1件
あなたの回答
tips
プレビュー