2016-04-13 24 views
0

Sunucuya çok sayıda değişken göndermem gerekiyor. Daha önce böyle inşaatı kullanıyordu: iOS 7 ile başlayan sunucuya dizi gönder

let myURL = NSURL(string: "http://example.com"); 
let request = NSMutableURLRequest(URL:myURL!); 
request.HTTPMethod = "POST"; 

let postString = "param1=\(var1)&param2=\(var2)" 

request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding); 

Şimdi param1 ve param2 ama birkaç diziler gibi sadece değişkenler göndermek gerekir. Ben Alamofire denilen kütüphane olduğunu biliyoruz ama

let mapDict = [ "a":"First", "b":"Second"] 

let json = [ "title":"kk" , "dict": mapDict ] 
let jsonData = NSJSONSerialization.dataWithJSONObject(json, options: .PrettyPrinted, error: nil) 

// create post request 
let url = NSURL(string: "http://example.com/post")! 
let request = NSMutableURLRequest(URL: url) 
request.HTTPMethod = "POST" 

// insert json data to the request 
request.HTTPBody = jsonData 


let task = NSURLSession.sharedSession().dataTaskWithRequest(request){ data,response,error in 
if error != nil{ 
    println(error.localizedDescription) 
    return 
} 
if let responseJSON = NSJSONSerialization.JSONObjectWithData(data, options: nil, error: nil) as? [String:AnyObject]{ 
    println(responseJSON) 
} 
} 

task.resume() 

Sen şartının diziyi yerine sözlüğü kullanabilirsiniz Böyle bir şey yapabiliriz iOS 7'de

cevap

1

destekleyen değildir. Umarım bu yardımcı olur. :)

+0

Teşekkürler, ancak bu kod Swift 2 ve Xcode 7 ile çalışmıyor. Deneme blokları ve birkaç değişiklik daha gerekiyor – moonvader