私はGET
メソッドで値を送信する場合、私はこのエラーを得た:スレッド1:EXC_BREAKPOINT(コード= 1、サブコード= 0x10136bb50) - 迅速
スレッド1:EXC_BREAKPOINT(コード= 1、サブコード= 0x10136bb50 )
値を取得するには、次の
var flname = self.txt_field_flname.text
var job_title = self.txt_field_job_title.text
var mobile = self.txt_field_mobile.text
var des = self.txt_field_des.text
var lat = self.lat
var lon = self.lon
self.sendNewJob(fname: flname!, title: job_title!, mobile: mobile!, des: des!, lat: String(lat), lon: String(lon))
func sendNewJob(fname:String,title:String,mobile:String,des:String,
lat:String,lon:String)
{
print("fname \(fname) title \(title) mobile \(mobile) des \(des) lat \(lat) lon \(lon)") //output is well
RestApiManager.sharedInstance.sendNewJob(fname: fname,title: title,mobile:mobile,
des:des,lat:lat,lon:lon) { (json: JSON) in
}
}
を
func sendNewJob(fname:String,title:String,mobile:String,des:String,
lat:String,lon:String,onCompletion: @escaping (JSON) -> Void) {
let route = baseURL+"up=1&Name=\(fname)&BusinessName=\(title)&MobileNumber=\(mobile)&latitude=\(lat)&longitude=\(lon)&Description=\(des)"
makeHTTPGetRequest(path: route, onCompletion: { json, err in
onCompletion(json as JSON)
})
}
// MARK: Perform a GET Request
private func makeHTTPGetRequest(path: String, onCompletion: @escaping ServiceResponse) {
let request = NSMutableURLRequest(url: NSURL(string: path)! as URL) // line of my error
let session = URLSession.shared
let task = session.dataTask(with: request as URLRequest, completionHandler: {data, response, error -> Void in
if let jsonData = data {
let json:JSON = JSON(data: jsonData)
onCompletion(json, error as NSError?)
} else {
onCompletion(nil, error as NSError?)
}
})
task.resume()
}
どれ不用意に書かれた感嘆符は招待状です:*私がクラッシュしてください*。ところで、これはSwift 3です:NSMutableURLRequest、NSURLとNSErrorを使わず、変数名は* snake_cased * – vadian
0kではなく* camelCased *であるはずです。 NSURLはutf-8をサポートしていないと思います。私はutf-8文字列を使うとこのエラーが出ます。 –
このクラッシュの原因となっている 'path'の正確な値で質問を更新してください。おそらくスペースやその他の無効なエスケープ文字が含まれている可能性があります。 – rmaddy