ios – Swift2.0:如何通过try try获取返回值和错误

前端之家收集整理的这篇文章主要介绍了ios – Swift2.0:如何通过try try获取返回值和错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Objective-C中有一个函数.如果发生错误,此函数始终返回值,事件:

-(NSString *)test:(NSError **)error;

我在Swift1中覆盖它如下,这样我仍然可以同时得到值和错误.

override func test(error: NSErrorPointer) -> String {
    var error: NSError?
    let result = super.test(&error)
    ...
}

但是现在在swift2中,我只能覆盖像这样的函数

override func test() throws -> String {

}

在这种情况下,如何同时获取值和错误

我这样做是因为我需要覆盖AFNetworking中的一个函数.需要返回值和错误.

- (id)responSEObjectForResponse:(NSURLResponse *)response
                           data:(NSData *)data
                          error:(NSError *__autoreleasing *)error;

解决方法

我知道这不是回答这个问题,虽然我可以提供有关Swift错误处理方式的指导,但这对你来说可能要容易得多.

AFNetworking有一个名为AlamoFire的专用Swift库.如果您的项目是在Swift中,那么使用快速版本的AFNetworking库可能会对您有所帮助.在这里能找到它:

https://github.com/Alamofire/Alamofire

猜你在找的iOS相关文章