Verilerimi (JSON) geri almak için hızlı bir şekilde func ile ilgili bir sorunum var. Tamamlanma sürecini biliyorum ama mücadele ediyorum, belki birisi yardım edebilir.tamamlama işleyicisi alamofire multipart yükleme isteği
Aşağıdaki kod işlevimi gösterir. API, jsonu bir alanda dize olarak ister. İsteğin kendisi çalışır> yazdırma (posta) doğru verileri gösterir. Ama ben onu bu işlevden anlamam.
class func searchCities(jsonStr: String) -> JSON {
let oEndpoint = "https://api.domain.com/api/1.0/"
guard let url = NSURL(string: oEndpoint) else {
print("error url")
return nil
}
// let parameters : [String: String] = ["one":"some param", "two":"some other param"]
var result: JSON = JSON("")
Alamofire.upload(.POST,
url,
multipartFormData: { multipartFormData in
multipartFormData.appendBodyPart(data: jsonStr.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!, name :"data")
// parameters if needed
// multipartFormData.appendBodyPart(data: value, name: key)
},
encodingCompletion: { encodingResult in
switch encodingResult {
case .Success(let upload, _, _):
upload.responseJSON{ response in
guard response.result.error == nil else {
print("error response")
print(response.result.error!)
return
}
if let value: AnyObject = response.result.value{
let post = JSON(value)
print(post)
result = JSON(value) }
}
case .Failure(_):
print("failure")
break
}
}
)
//print("res: \(result)")
return result
}