2016-06-03 4 views
2

С Objective-C и AFNetworking я использовал для расширения AFHTTPSessionManager и создал однопользовательский общий клиент для обработки всех запросов.Как использовать Alamofire? (шаблоны проектирования)

Однако с Swift 2.0 и Alamofire 3.4, если я собираюсь следовать аналогичному подходу, какие классы следует расширить? (AFHTTPSessionManager эквивалент?) Или это даже необходимо с Alamofire? потому что кажется, что все запросы уже обрабатываются совместно используемым менеджером в Alamofire.

ответ

1

Если вы посмотрите на manager section, у вас есть несколько вариантов. Если вы хотите, чтобы обрабатывать простые запросы, вы можете просто использовать менеджер по умолчанию с помощью Alamofire.request(.GET, "https://httpbin.org/get") вы можете также изменить конфигурацию сеанса:

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) 

Если у вас есть более сложные потребности, вы должны рассмотреть подклассы. Надеюсь, этот короткий ответ поможет :)

Смежные вопросы