gpt4 book ai didi

ios - AFHTTPRequestOperation setCacheResponseBlock 无法转换类型值

转载 作者:行者123 更新时间:2023-11-30 13:58:36 25 4
gpt4 key购买 nike

我在 swift 中使用AFHTTPRequestOperation,如下所示:

let operation : AFHTTPRequestOperation? = manager.GET(requestURL, parameters: nil,
success: { (operation:AFHTTPRequestOperation!, responseObject:AnyObject!) -> Void in

...
...
...
success(downloadedItems: responseObject)
}, failure: { (operation: AFHTTPRequestOperation!, error: NSError!) in
failure(responseFromCache: responseFromCache, error: error);
})

我将 setCacheResponseBlock 用于应用程序特定目的(ETag 等)

操作!.setCacheResponseBlock {(连接:NSURLConnection,cachedResponse:NSCachedURLResponse)-> NSCachedURLResponse中 print("返回:200") 来自缓存的响应 = false 返回缓存的响应 }

一切正常,直到将 XCode 更新到新版本 XCode7.1。

这是我的问题,更新后构建应用程序时出现此错误:

Cannot convert value of type '(NSURLConnection, NSCachedURLResponse) -> NSCachedURLResponse' to expected argument type '((NSURLConnection!, NSCachedURLResponse!) -> NSCachedURLResponse!)!'

如何解决这个问题?

最佳答案

检查错误消息后,我了解到我的参数有问题。我在 XCode 中检查了方法的声明,并且了解了刚刚更新的方法的声明:

func setCacheResponseBlock(block: ((NSURLConnection!, NSCachedURLResponse!) -> NSCachedURLResponse!)!)

我像这样更新了我的方法:

  operation!.setCacheResponseBlock { (connection: NSURLConnection!, cachedResponse: NSCachedURLResponse!) -> NSCachedURLResponse! in
print("Returns:200")
responseFromCache = false
return cachedResponse
}

另一个美好的结局是 Xcode 中的构建成功消息。希望这会对某人有所帮助。

关于ios - AFHTTPRequestOperation setCacheResponseBlock 无法转换类型值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33283502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com