中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS網絡編程-ASIHTTPRequest框架同步請求

發布時間:2020-08-14 17:41:18 來源:網絡 閱讀:1474 作者:tony關東升 欄目:移動開發

在ASIHTTPRequest框架中與HTTP請求相關的類有:ASIHTTPRequest和ASIFormDataRequest,其中最常用的是ASIHTTPRequest,ASIFormDataRequest是ASIHTTPRequest的子類,ASIFormDataRequest可以發送類似與HTML表單數據,也可以上傳數據,默認采用POST請求方法。也可以其它的HTTP請求方法。它們都可以進行異步或同步請求。下面我們從最簡單的GET同步請求介紹。

1、實現GET同步請求

實現GET同步請求使用最基本請求類ASIHTTPRequest就可以了。我們還是使用MyNotes應用為例,只考慮查詢功能實現,修改主視圖控制器MasterViewController.m的startRequest方法如下:
 

  1. -(void)startRequest 
  2.  
  3.  
  4. NSString *strURL = [[NSString alloc] initWithFormat: 
  5.  
  6. @”http://iosbook3/mynotes/webservice.php?email=%@&type=%@&action=%@”, 
  7.  
  8. @”<你的iosbook1.com用戶郵箱>”,@”JSON”,@”query”]; 
  9.  
  10. NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]]; 
  11.  
  12. ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; 
  13.  
  14. [request startSynchronous]; 
  15.  
  16. NSLog(@”請求完成…”); 
  17.  
  18. NSError *error = [request error]; 
  19.  
  20. if (!error) { 
  21.  
  22. //NSString *response = [request responseString]; 
  23.  
  24. NSData *data  = [request responseData]; 
  25.  
  26. NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data 
  27.  
  28. options:NSJSONReadingAllowFragments error:nil]; 
  29.  
  30. [self reloadView:resDict]; 
  31.  
  32.  



使用ASIHTTPRequest類,需要引入頭文件ASIHTTPRequest.h。

2、實現POST同步請求

發送POST方法的請求,無論同步還是異步請求都是使用ASIFormDataRequest類,只不過它們稍微有些不同。本節我們只介紹同步請求下使用ASIFormDataRequest類來發送POST方法。修改主視圖控制器MasterViewController.m的startRequest方法如下:
 

  1. -(void)startRequest 
  2.  
  3.  
  4. NSString *strURL = @”http://iosbook3/mynotes/webservice.php”; 
  5.  
  6. NSURL *url = [NSURL URLWithString:[strURL URLEncodedString]]; 
  7.  
  8.   
  9.  
  10. ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
  11.  
  12. [request setPostValue:@ "<你的iosbook1.com用戶郵箱>" forKey:@"email"];                ③ 
  13.  
  14. [request setPostValue:@"JSON" forKey:@"type"]; 
  15.  
  16. [request setPostValue:@"query" forKey:@"action"]; 
  17.  
  18. [request startSynchronous]; 
  19.  
  20. NSLog(@”請求完成…”); 
  21.  
  22. NSError *error = [request error]; 
  23.  
  24. if (!error) { 
  25.  
  26. //NSString *response = [request responseString]; 
  27.  
  28. NSData *data  = [request responseData]; 
  29.  
  30. NSDictionary *resDict = [NSJSONSerialization JSONObjectWithData:data 
  31.  
  32. options:NSJSONReadingAllowFragments error:nil]; 
  33.  
  34. [self reloadView:resDict]; 
  35.  
  36.  



使用ASIFormDataRequest需要引入頭文件ASIFormDataRequest.h。

如果我們想發送除了GET和POST以外的其它請求方法,可以使用[request setRequestMethod:@"PUT"]語句設置,其中PUT是請求方法。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乐昌市| 乐亭县| 静安区| 贵溪市| 津市市| 郸城县| 十堰市| 芜湖市| 延长县| 屯昌县| 尼木县| 鄂州市| 盐城市| 锡林浩特市| 从化市| 鹤岗市| 武冈市| 突泉县| 铜鼓县| 靖远县| 蛟河市| 新兴县| 三亚市| 九龙城区| 灵宝市| 红原县| 施甸县| 西安市| 碌曲县| 高邮市| 伊春市| 多伦县| 朝阳区| 凉山| 道孚县| 阳东县| 九台市| 蓬溪县| 华容县| 呼图壁县| 施甸县|