身份验证服务错误中的完成处理程序
Completion handler in authentication service error
我正在执行登录操作并正在调用自定义身份验证服务,该服务有一个方法,该方法接受用户名和密码的字典并执行 API 调用。 Auth服务中的功能如下图
func loginWithUserData(userData: Dictionary<String, Any> ,completion: @escaping (_ success:DataResponse<Any>)->Void)
{
NetworkManager.sharedNetworkManager.performNetworkOperation(url: myEndpoint().userSession(), httpmethod: .post, parameters: userData) { response in
completion(response)
}
}
我调用Auth服务的函数如下:
func performLoginAction(dictForLogin: [AnyHashable: Any]) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! Dictionary<String)
}
Xcode 抱怨我的 performLoginAction 函数中的参数缺少参数。我不知道要在 completion: 参数中添加什么。完成处理程序的格式是什么或者我应该 return 什么?
注意:我正在使用 Swift 3.
您必须添加完成处理程序
func performLoginAction(dictForLogin: [AnyHashable: Any]) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! Dictionary<String, Any>, completion: { success in
// do something with the `DataResponse<Any>` object
})
}
或使用尾随闭包语法:
func performLoginAction(dictForLogin: [AnyHashable: Any], ) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! Dictionary<String, Any>) { success in
// do something with the `DataResponse<Any>` object
}
}
你可以用这个 -
func performLoginAction(dictForLogin: [[String: Any]]) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! [[String: Any]]) { response in
}
}
我正在执行登录操作并正在调用自定义身份验证服务,该服务有一个方法,该方法接受用户名和密码的字典并执行 API 调用。 Auth服务中的功能如下图
func loginWithUserData(userData: Dictionary<String, Any> ,completion: @escaping (_ success:DataResponse<Any>)->Void)
{
NetworkManager.sharedNetworkManager.performNetworkOperation(url: myEndpoint().userSession(), httpmethod: .post, parameters: userData) { response in
completion(response)
}
}
我调用Auth服务的函数如下:
func performLoginAction(dictForLogin: [AnyHashable: Any]) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! Dictionary<String)
}
Xcode 抱怨我的 performLoginAction 函数中的参数缺少参数。我不知道要在 completion: 参数中添加什么。完成处理程序的格式是什么或者我应该 return 什么?
注意:我正在使用 Swift 3.
您必须添加完成处理程序
func performLoginAction(dictForLogin: [AnyHashable: Any]) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! Dictionary<String, Any>, completion: { success in
// do something with the `DataResponse<Any>` object
})
}
或使用尾随闭包语法:
func performLoginAction(dictForLogin: [AnyHashable: Any], ) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! Dictionary<String, Any>) { success in
// do something with the `DataResponse<Any>` object
}
}
你可以用这个 -
func performLoginAction(dictForLogin: [[String: Any]]) {
AuthenticationService().loginWithUserData(userData: dictForLogin as! [[String: Any]]) { response in
}
}