0
我在Swift中從AFNetworking 2.5遷移到3.0,並且遇到了dataTaskWithRequest方法的問題。此方法位於具有AFHTTPSessionManager超類的類中。我從XCode得到的錯誤是「方法不覆蓋它的超類中的任何方法」。Swift AFNetworking dataTaskWithRequest覆蓋問題
什麼是在SessionManager類中實例化dataTaskWithRequest方法的正確方法?
其他StackOverflow的帖子已建議刪除 「覆蓋」,但是當我這樣做,我得到的錯誤:
「方法 'dataTaskWithRequest(:completionHandler :)' 用Objective-C中選擇「dataTaskWithRequest:completionHandler: dataTaskWithRequest('與方法衝突 ':completionHandler' 從超類的AFURLSessionManager'具有相同的目標C選擇」
代碼:):
class SessionManager: AFHTTPSessionManager {
...
func dataTaskWithRequest(request: NSURLRequest!, completionHandler: ((NSURLResponse?, AnyObject?, NSError?) -> Void)) ->
NSURLSessionDataTask! {
if let request = request as? NSMutableURLRequest {
request.setValue(gQuidsiCache.amznSessionID, forHTTPHeaderField: amazonSesionIDHeader)
request.setValue(gQuidsiCache.visitorID, forHTTPHeaderField: legacyVisitorIDHeader)
}
return super.dataTaskWithRequest(request, completionHandler: completionHandler)
}
}