經過Post請求方式,同步獲取網絡數據,一旦發送同步請求,程序將中止用戶交互,直至服務器返回數據緩存
在ViewController.m文件內的viewDidLoad函數添加一下測試代碼服務器
1 - (void)viewDidLoad { 2 [super viewDidLoad]; 3 // Do any additional setup after loading the view, typically from a nib. 4 5 // 1.創建一個網址對象,指定請求數據的網址 6 NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"]; 7 // 2.再經過網址建立網絡請求對象. 8 // 參數1:請求訪問路徑 9 // 參數2:緩存協議 10 // 參數3:網絡請求超時時間 11 NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:10]; 12 // 3.設置網絡通信方式爲Post,默認爲Get 13 [request setHTTPMethod:@"POST"]; 14 // 4.設置網絡請求的參數 15 NSString *str = @"type=focus-c"; 16 // 5.將請求參數,轉換爲二進制數據 17 NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding]; 18 [request setHTTPBody:data]; 19 // 6.使用網絡鏈接對象實現網絡通信,網絡鏈接對象建立成功後,就建立了一個網絡鏈接。 20 NSData *received = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil]; 21 // 7.將返回的數據轉換成字符串並輸出 22 NSString *str1 = [[NSString alloc] initWithData:received encoding:NSUTF8StringEncoding]; 23 NSLog(@">>>>>>>%@",str1); 24 }
執行以後就能夠根據指定網址獲取數據了。網絡