首页 > 其他 > 详细

AlamoFireDemo

时间:2016-03-21 19:59:06      阅读:167      评论:0      收藏:0      [点我收藏+]
//
//  ViewController.swift
//  AlamFireDemo
//
//

import UIKit
import Alamofire

class ViewController: UIViewController {
    lazy var defManager : Manager = {
        //1、get addtional http header
        var defHeaders = Alamofire.Manager.sharedInstance.session.configuration.HTTPAdditionalHeaders ?? [:]
        //2、set a NSURLSessionConfiguration
        let conf = NSURLSessionConfiguration.defaultSessionConfiguration()
        conf.HTTPAdditionalHeaders = defHeaders
        
        //3、geneter a manager
        let manager = Alamofire.Manager(configuration: conf)
        return manager
        
    }()
    // 后台下载
    lazy var backgroundManager :Manager = {
        
        var defHeaders = Alamofire.Manager.sharedInstance.session.configuration.HTTPAdditionalHeaders ?? [:]
        
        let conf = NSURLSessionConfiguration.backgroundSessionConfigurationWithIdentifier("com.example.app.backgroud")
        let manager = Alamofire.Manager(configuration: conf)
        return manager
    }()
    
    
    lazy var ephemeralManager :Manager = {
        
        var defHeaders = Alamofire.Manager.sharedInstance.session.configuration.HTTPAdditionalHeaders ?? [:]
        
        let conf = NSURLSessionConfiguration.ephemeralSessionConfiguration()
        let manager = Alamofire.Manager(configuration: conf)
        return manager
    }()
    override func viewDidLoad() {
        super.viewDidLoad()
        Alamofire.request(.GET, "https://httpbin.org/get").response { (request, response, data, error) -> Void in
            print(request)
            print(response)
            print(data)
            print(data.dynamicType)
            print(error)
            print(error.dynamicType)
        }.responseString { (response) -> Void in
            print("String ==========")
            switch response.result {
            case .Success(let str):
                    print("\(str.dynamicType)")
                    print("\(str)")
            case .Failure(let error):
                    print("\(error)")
            
            }
        }.responseJSON { (response) -> Void in
            print("JSON ==========")
            
            switch response.result {
            
            case .Success(let json):
                let dic = json as! Dictionary<String,AnyObject>
                
                let origin = dic["origin"] as! String
                let headers = dic["headers"] as! Dictionary<String,String>
                print("origin :\(origin)")
                print("user-agent :\(headers["User-Agent"])")
            case .Failure(let error):
                print(error)
            }
        }
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

  

AlamoFireDemo

原文:http://www.cnblogs.com/sallet/p/5302961.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!