swift 封装AFN

import UIKit
import AFNetworking

enum WBReqMethod {
    case get
    case post
}

class WBNetworkingManger: AFHTTPSessionManager {

    static let shared : WBNetworkingManger = {
        let manger = WBNetworkingManger()
        manger.responseSerializer = AFHTTPResponseSerializer()
        manger.responseSerializer.acceptableContentTypes?.insert("text/plain")
        return manger
    }()
   

    func request(method:WBReqMethod = .get,urlString:String,prama:[String:AnyObject]?,completion:@escaping (_ jsonString:AnyObject?,_ isSuccess:Bool)->()) {
       
        let successBlock = {(task:URLSessionDataTask,json:Any?) ->() in
            completion(json as AnyObject,true)
        }
       
        let failureBlock = {(task:URLSessionDataTask?,error:Error) ->() in
            completion(nil,false)
        }
       
        if method == .get {
            get(urlString, parameters: prama, progress: nil, success: successBlock, failure: failureBlock)
        }else{
            post(urlString, parameters: prama, progress: nil, success: successBlock, failure: failureBlock)
        }

    }
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容