★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝()➤GitHub地址:➤原文地址: ➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★两种方式作用相同,是同一套代码的两种表述。
第一种方式:集聚。
直接设置成员属性(全局属性),这种方法不能灵活修改网络请求超时时间timeout。
声明为成员属性:
1 // MARK: - 设置为全局变量2 var timeoutSessionManager1:Alamofire.SessionManager = {3 let configuration = URLSessionConfiguration.default4 //请求超时时间15秒5 configuration.timeoutIntervalForRequest = 156 return Alamofire.SessionManager(configuration: configuration)7 }()
在方法中调用:
1 // MARK: - 方法内调用2 override func viewDidLoad() {3 self.timeoutSessionManager1.request(url,method:.post ).responseJSON { response in 4 // TODO:处理服务器返回的数据5 } 6 }
第二种方式:分散。
这种方法可以灵活修改网络请求超时时间timeout。
声明为成员属性:
1 // MARK: - 设置为全局变量2 var timeoutSessionManager2: Alamofire.SessionManager?
在方法中修改声明的属性。在方法种调用:
1 // MARK: - 方法内修改属性的值和调用 2 override func viewDidLoad() { 3 //修改属性的值 4 let config = URLSessionConfiguration.default 5 //设置请求超时时间 6 config.timeoutIntervalForRequest = 15 7 self.timeoutSessionManager2 = Alamofire.SessionManager(configuration: config) 8 9 // MARK: - 调用10 self.timeoutSessionManager2.request(url,method:.post ).responseJSON { response in 11 // TODO:处理服务器返回的数据12 } 13 }