Alamofire 返回字符串值
Posted
技术标签:
【中文标题】Alamofire 返回字符串值【英文标题】:Alamofire return string value 【发布时间】:2015-09-03 07:15:33 【问题描述】:我正在尝试编写一个方法来将来自 API 的 json 响应作为字符串返回。这是我的代码:
func authenticateUser(completionHandler: (responseObject: String?, error: NSError?) -> ())
makeCall(completionHandler: completionHandler)
func makeCall(completionHandler: (responseObject: String?, error: NSError?) -> ())
Alamofire.request(.GET, loginUrlString)
.authenticate(user: "x", password: "y")
.responseString request, response, responseObject, error in
completionHandler(responseObject: responseObject as? String, error: error)
我无法编译它,authenticateUser 方法中的 makeCall 调用显示“Extraneous argument label 'completionHandler' in call。
我看不出我的代码有什么问题?
【问题讨论】:
【参考方案1】:试着打电话给makeCall(completionHandler)
。
从错误消息中,我猜这就是它所抱怨的。 Swift 函数标签的使用通常看起来不一致且令人困惑。
【讨论】:
它现在可以工作了,但是有一个问题,我如何从另一个类调用 authenticateUser?传递什么参数 我不太清楚你的意思——你在 Alamofire 模块/类上调用一个静态类方法,它生成一个请求,该请求作为返回传回。 Alamofire 使用方法链接(总是从调用它的方法返回原始对象)来允许链接多个调用,包括authenticate
。如果要在另一个类中设置身份验证参数,则必须将返回的 Request
实例传递给它。以上是关于Alamofire 返回字符串值的主要内容,如果未能解决你的问题,请参考以下文章