Swift - 同步请求获取网络数据
使用NSURLConnection可以实现http通信。它提供了异步请求和同步请求两种通信方式。
注意:同步请求数据会造成主线程阻塞,必须请求结束后用户才能做其他的操作,所有通常在请求大数据或者网络不畅时不建议使用。
同步请求样例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
//创建NSURL对象 //创建请求对象 var urlRequest: NSURLRequest = NSURLRequest ( URL : url) //响应对象 var response: NSURLResponse ? //错误对象 var error: NSError ? //发送请求 var data: NSData ? = NSURLConnection .sendSynchronousRequest(urlRequest, returningResponse: &response, error: &error) if (error != nil ){ println (error?.code) println (error?.description) } else { var str = NSString (data: data!, encoding: NSUTF8StringEncoding ) println (str) } |