如何通过iOS Swift中的回调函数发送JSON响应数据?

当用户请求从示例应用登录到框架时,它将命中api并根据bool值返回回调。

现在我从api获得返回响应并打印true。现在,我正在尝试使用完成处理程序将JSON响应数据从框架传递到sampleapp。

这是我的json响应:(试图将用户名,authToken和expireDate传递给sampleapp)

  ["username": Optional("demo"),"password": Optional("demo")]
  SUCCESS: {
  authToken = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3mioiJhOGZsb3ciLCJleHAiOjE1NzMxOTY2MjUsInVzZXJuYW1lIjoiZGVtbyJ9.HvNpPPIWeM5-HuZ7wJl3jwiAbIlz-ktvfsRlIl6OlGE";
 expireDate = "Fri Nov 08 07:03:45 UTC 2019";
 groups =     (
    accounting,"camunda-admin",management,sales
    );
   username = demo;
}

这是我的框架代码:

    public func loginApiCall(username: String?,password: String?,callback : @escaping ((Bool) -> Void),completionHandler: (_ genres: NSArray) -> () ) {

    let parameters = [
        "username": username,"password": password
    ]
    print(parameters)

    let url = "https://suryoday-staging.autonom8.com/engine-rest/authentication/"
Alamofire.request(url,method: .post,parameters: parameters as Parameters,encoding: JSONEncoding.default,headers: [:]).responseJSON {
        response in

    if (response.result.isSuccess) {

        callback(true)

    } else if (response.result.isFailure) {

        callback(false)
    }

    }

}

这是我的示例代码,我试图在其中获取响应数据。

    let apiCall = APICall.init()
    apiCall.loginApiCall(username: "dem",password: "dem") { (status)   in
        print(status,"--")

    }
lina111000 回答:如何通过iOS Swift中的回调函数发送JSON响应数据?

使用NSDictionary代替NSArray:

public func loginApiCall(username: String?,password: String?,callback : @escaping ((Bool) -> Void),completionHandler: (_ genres: NSDictionary) -> () )   

并调用:带有responseJon的完成处理程序

if (response.result.isSuccess) {

    callback(true)
    completionHandler(response.result.value) // 
} else if (response.result.isFailure) {

    callback(false)
}

示例代码:

self.loginApiCall(username: "1111",password: "22222",callback: { (status) in

}) { (json) in
        // parse json    
} . 

p / s:但我不知道您为什么需要callback : @escaping ((Bool) -> Void)
试试:
 public func loginApiCall(username: String?,completionHandler: (_ isSuccess: Bool,_ genres: NSDictionary) -> () )

本文链接:https://www.f2er.com/3153501.html

大家都在问