Swift POST正文参数没有收到

时间:2015-03-15 21:41:52

标签: ios swift post

我想登录我的服务器。我已经为android写了这个,所以服务器工作正常。我想使用Swift将其重写为iOS,并且没有收到params数组到服务器。它说:

  

GET:数组(   )   POST:数组(   )   文件:数组(   )   ret:{" a":"没有这样的页面"," r":404}

我做错了什么?

 func sendLogin(username : String,password : String,myCompletionHandler:(resp:NSURLResponse,d:NSData!,e:NSError!)->Void)->Void {
    var session = NSURLSession.sharedSession();

    NSLog("u:"+username+", pass:"+password);
    var params = ["username":username, "password":password] as Dictionary<String, String> ;
    NSLog(params.description);
    var request : NSMutableURLRequest = NSMutableURLRequest();
    var err: NSError?
    request.HTTPBody = NSJSONSerialization.dataWithJSONObject(params, options: nil, error: &err);

    request.URL = NSURL(string: url);
    request.HTTPMethod = "POST";
    request.setValue("multipart/form-data", forHTTPHeaderField: "Content-Type");
    //request.addValue("application/json", forHTTPHeaderField: "Accept");
    var task = session.dataTaskWithRequest(request,completionHandler:{
        ( data: NSData!,response:NSURLResponse!, error: NSError!) -> Void in
        myCompletionHandler(resp:response,d:data,e:error);


    });
    task.resume();
    /*  NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue(),

    completionHandler:{
    (response:NSURLResponse!, data: NSData!, error: NSError!) -> Void in
    myCompletionHandler(resp:response,d:data,e:error);


    });*/

}

更新

解决方案是Victor Sigler所说的。我改为Alamofire,现在它正在运作。谢谢!

  

我强烈建议您使用Alamofire进行HttpNetworking任务 -   Victor Sigler

1 个答案:

答案 0 :(得分:0)

解决方案是Victor Sigler所说的。我改为Alamofire,现在它正在运作。谢谢!

  

我强烈建议您使用Alamofire进行HttpNetworking任务 -   Victor Sigler