Наскоро бях обновен до Swift 2 и XCode 7. Използвах Alamofire само чрез копиране Alamofire.swift
в моя проект. Но сега искам да използвам Alamofire 2 и да изтеглите и да получите най-новите Alamofire.swift
.
Получавам много грешки в Alamofire.swift като:
Използване на недеклариран тип "Заявка"
Също Method
беше преброяване на HttpMethods, но сега типът му на Alias за COpaquePointer
Знам, че това може да стане чрез CocoaPods, но не искам да използвам рамки. Какво е най-добрият начин за интегрирането му сега?
P.S .: Искам да поддържам iOS 8+
Отговори:
1 за отговор № 1Трябва да изтеглите всички .swift файлове от хранилището на Alamofire. Между Alamofire 1 и 2 има много неща, които са се променили. Например Request
и responseJSON
блок връща три неща, NSURLRequest?, NSHTTPURLResponse?,Result<AnyObject>
struct има данни както за json, така и за json.value
и json.error
като ErrorType
Следният пример за код показва как да го използвате с Xcode 7 и Swift 2
var defaultCfg: NSURLSessionConfiguration {
let cfg = NSURLSessionConfiguration.defaultSessionConfiguration()
cfg.HTTPCookieStorage = NSHTTPCookieStorage.sharedHTTPCookieStorage()
cfg.HTTPCookieAcceptPolicy = NSHTTPCookieAcceptPolicy.Always
cfg.URLCache = nil
cfg.HTTPAdditionalHeaders = ["User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:40.0) Gecko/20100101 Firefox/40.0", "Accept-Language":"en-US,en;q=0.5"]
return cfg
}
self.mngr = Manager(configuration: cfg)
self.mngr.request(.GET, url,parameters:parameters)
.responseJSON { (req, res, json) in
if(json.error != nil) {
// NSLog("Error: (error)")
failure(res, json.value, someerroryouset)
return
}
else {
let jsond = JSON(json.value!)