2016-06-03 9 views
2

Mit Objective-C und AFNetworking habe ich die AFHTTPSessionManager erweitert und einen Singleton-Shared-Client erstellt, um alle Anfragen zu bearbeiten.Wie verwende ich Alamofire? (Entwurfsmuster)

Jedoch mit Swift 2.0 und Alamofire 3.4, wenn ich einen ähnlichen Ansatz folgen werde, welche Klassen sollte ich erweitern? (AFHTTPSessionManager gleichwertig?) Oder ist das überhaupt notwendig mit Alamofire? weil es scheint, dass alle Anforderungen bereits von einem freigegebenen Manager in Alamofire behandelt werden.

Antwort

1

Wenn Sie sich die manager section ansehen, haben Sie mehrere Möglichkeiten. Wenn Sie einfache Anfragen bearbeiten möchten, können Sie einfach den Standardmanager über Alamofire.request(.GET, "https://httpbin.org/get") verwenden Sie auch Session-Konfiguration ändern können:

var defaultHeaders = Alamofire.Manager.sharedInstance.session.configuration.HTTPAdditionalHeaders ?? [:] 
defaultHeaders["DNT"] = "1 (Do Not Track Enabled)" 

let configuration = NSURLSessionConfiguration.defaultSessionConfiguration() 
configuration.HTTPAdditionalHeaders = defaultHeaders 

let manager = Alamofire.Manager(configuration: configuration) 

Wenn Sie komplexere Bedürfnisse haben, sollten Sie Subklassifizieren berücksichtigen. Hoffe, diese kurze Antwort hilft :)