swift – 闭包参数列表的上下文类型期望1个参数,但指定了4个参数

前端之家收集整理的这篇文章主要介绍了swift – 闭包参数列表的上下文类型期望1个参数,但指定了4个参数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
升级Xcode 7,我正在使用Alamofire来管理API调用,我收到这个错误

‘闭包参数列表的上下文类型需要1个参数,但是4个被指定为’

对于以下代码

static func loginWithEmail(email: String,password: String,response: (token: String?) -> ()) {
    let urlString = baseURL + ResourcePath.login.description
    let parameters = [
        "email": email,"password": password
    ]
    Alamofire.request(.POST,urlString,parameters: parameters).responseJSON { (_,_,data,_) -> Void in
        let json = JSON(data!)
        let token = json["token"].string
        response(token: token)
    }
}

错误是指以下行:

Alamofire.request(.POST,_) -> Void in

我是快速关闭的新手,不知道我是否必须嵌套值才能使其有效.

帮助非常感激.

闭包采用类型为Response< AnyObject,NSError>的单个参数.所以你的代码应该看起来更像这样.
Alamofire.request(.POST,parameters: parameters).responseJSON { response in
    let json = JSON(response.data!)
    let token = json["token"].string
    response(token: token)
}

猜你在找的Swift相关文章