青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 298  文章 - 377  trackbacks - 0
<2016年10月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

常用鏈接

留言簿(34)

隨筆分類

隨筆檔案

文章檔案

相冊

收藏夾

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

//  
//  MJViewController.m  
//  03.AFN演練  
//  
//  Created by apple on 14-4-30.  
//  Copyright (c) 2014年 itcast. All rights reserved.  
//  
  
#import "MJViewController.h"  
#import "AFNetworking.h"  
  
@interface MJViewController ()  
  
@end  
  
@implementation MJViewController  
/*
 要使用常規的AFN網絡訪問 
  
 1. AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; 
  
    所有的網絡請求,均有manager發起 
  
 2. 需要注意的是,默認提交請求的數據是二進制的,返回格式是JSON 
  
    1> 如果提交數據是JSON的,需要將請求格式設置為AFJSONRequestSerializer 
    2> 如果返回格式不是JSON的, 
  
 3. 請求格式 
  
     AFHTTPRequestSerializer            二進制格式 
     AFJSONRequestSerializer            JSON 
     AFPropertyListRequestSerializer    PList(是一種特殊的XML,解析起來相對容易) 
  
 4. 返回格式 
  
     AFHTTPResponseSerializer           二進制格式 
     AFJSONResponseSerializer           JSON 
     AFXMLParserResponseSerializer      XML,只能返回XMLParser,還需要自己通過代理方法解析 
     AFXMLDocumentResponseSerializer (Mac OS X) 
     AFPropertyListResponseSerializer   PList 
     AFImageResponseSerializer          Image 
     AFCompoundResponseSerializer       組合 
 
*/  
  
- (void)viewDidLoad  
{  
    [super viewDidLoad];  
      
    [self reach];  
}  
  
#pragma mark - 演練  
#pragma mark - 檢測網絡連接  
- (void)reach  
{  
    /*
     AFNetworkReachabilityStatusUnknown          = -1,  // 未知 
     AFNetworkReachabilityStatusNotReachable     = 0,   // 無連接 
     AFNetworkReachabilityStatusReachableViaWWAN = 1,   // 3G 花錢 
     AFNetworkReachabilityStatusReachableViaWiFi = 2,   // 局域網絡,不花錢 
     
*/  
    // 如果要檢測網絡狀態的變化,必須用檢測管理器的單例的startMonitoring  
    [[AFNetworkReachabilityManager sharedManager] startMonitoring];  
      
    // 檢測網絡連接的單例,網絡變化時的回調方法  
    [[AFNetworkReachabilityManager sharedManager] setReachabilityStatusChangeBlock:^(AFNetworkReachabilityStatus status) {  
        NSLog(@"%d", status);  
    }];  
}  
  
#pragma mark - Session 下載  
- (void)sessionDownload  
{  
    NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];  
    AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:config];  
      
    NSString *urlString = @"http://localhost/itcast/videos/01.C語言-語法預覽.mp4";  
    urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];  
      
    NSURL *url = [NSURL URLWithString:urlString];  
    NSURLRequest *request = [NSURLRequest requestWithURL:url];  
      
    NSURLSessionDownloadTask *task = [manager downloadTaskWithRequest:request progress:nil destination:^NSURL *(NSURL *targetPath, NSURLResponse *response) {  
        // 指定下載文件保存的路徑  
//        NSLog(@"%@ %@", targetPath, response.suggestedFilename);  
        
// 將下載文件保存在緩存路徑中  
        NSString *cacheDir = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];  
        NSString *path = [cacheDir stringByAppendingPathComponent:response.suggestedFilename];  
          
        // URLWithString返回的是網絡的URL,如果使用本地URL,需要注意  
        NSURL *fileURL1 = [NSURL URLWithString:path];  
        NSURL *fileURL = [NSURL fileURLWithPath:path];  
          
        NSLog(@"== %@ |||| %@", fileURL1, fileURL);  
          
        return fileURL;  
    } completionHandler:^(NSURLResponse *response, NSURL *filePath, NSError *error) {  
        NSLog(@"%@ %@", filePath, error);  
    }];  
      
    [task resume];  
}  
  
#pragma mark - POST JSON  
- (void)postJSON  
{  
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
      
    NSDictionary *dict = @{@"name": @"zhangsan"};  
    NSDictionary *dict1 = @{@"name": @"wangwu"};  
    NSArray *array = @[dict, dict1];  
    // 設置請求格式  
    manager.requestSerializer = [AFJSONRequestSerializer serializer];  
    // 設置返回格式  
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];  
      
    [manager POST:@"http://localhost/postjson.php" parameters:array success:^(AFHTTPRequestOperation *operation, id responseObject) {  
        NSString *result = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];  
          
        NSLog(@"%@", result);  
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
          
    }];  
      
}  
  
#pragma mark - 隨機文件名上傳  
- (void)postUpload1  
{  
    // 本地上傳給服務器時,沒有確定的URL,不好用MD5的方式處理  
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];  
      
    [manager POST:@"http://localhost/demo/upload.php" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {  
          
        NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"頭像1.png" withExtension:nil];  
          
        // 要上傳保存在服務器中的名稱  
        
// 使用時間來作為文件名 2014-04-30 14:20:57.png  
        
// 讓不同的用戶信息,保存在不同目錄中  
        NSDateFormatter *formatter = [[NSDateFormatter alloc] init];  
        // 設置日期格式  
        formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";  
        NSString *fileName = [formatter stringFromDate:[NSDate date]];  
          
        [formData appendPartWithFileURL:fileURL name:@"uploadFile" fileName:fileName mimeType:@"image/png" error:NULL];  
          
    } success:^(AFHTTPRequestOperation *operation, id responseObject) {  
        NSLog(@"OK");  
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
        NSLog(@"error");  
    }];  
}  
  
#pragma mark - POST上傳  
- (void)postUpload  
{  
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
    // AFHTTPResponseSerializer就是正常的HTTP請求響應結果:NSData  
    
// 當請求的返回數據不是JSON,XML,PList,UIImage之外,使用AFHTTPResponseSerializer  
    
// 例如返回一個html,text  
    
//  
    
// 實際上就是AFN沒有對響應數據做任何處理的情況  
    manager.responseSerializer = [AFHTTPResponseSerializer serializer];  
      
    // formData是遵守了AFMultipartFormData的對象  
    [manager POST:@"http://localhost/demo/upload.php" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {  
          
        // 將本地的文件上傳至服務器  
        NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"頭像1.png" withExtension:nil];  
          
        [formData appendPartWithFileURL:fileURL name:@"uploadFile" error:NULL];  
    } success:^(AFHTTPRequestOperation *operation, id responseObject) {  
        NSString *result = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];  
          
        NSLog(@"完成 %@", result);  
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
        NSLog(@"錯誤 %@", error.localizedDescription);  
    }];  
}  
  
#pragma mark - JSON  
- (void)XMLData  
{  
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
      
    // 返回的數據格式是XML  
    manager.responseSerializer = [AFXMLParserResponseSerializer serializer];  
      
    NSDictionary *dict = @{@"format": @"xml"};  
      
    // 網絡訪問是異步的,回調是主線程的,因此程序員不用管在主線程更新UI的事情  
    [manager GET:@"http://localhost/videos.php" parameters:dict success:^(AFHTTPRequestOperation *operation, id responseObject) {  
          
        // 如果結果是XML,同樣需要使用6個代理方法解析,或者使用第三方庫  
        
// 第三方庫第三方框架,效率低,內存泄漏  
        NSLog(@"%@", responseObject);  
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
        NSLog(@"%@", error);  
    }];  
}  
  
#pragma mark - JSON  
- (void)JSONData  
{  
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
      
    // 原本需要拼接get訪問URL ? & =  
    NSDictionary *dict = @{@"format": @"json"};  
      
    // 網絡訪問是異步的,回調是主線程的,因此程序員不用管在主線程更新UI的事情  
    [manager GET:@"http://localhost/videos.php" parameters:dict success:^(AFHTTPRequestOperation *operation, id responseObject) {  
        NSLog(@"%@", responseObject);  
        // 提問:NSURLConnection異步方法回調,是在子線程  
        
// 得到回調之后,通常更新UI,是在主線程  
        NSLog(@"%@", [NSThread currentThread]);  
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
        NSLog(@"%@", error);  
    }];  
}  
  
#pragma mark - POST登錄  
- (void)postLogin  
{  
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
      
    // 原本需要拼接get訪問URL ? & =  
    NSDictionary *dict = @{@"username": @"wangwu", @"password" : @"wang"};  
      
    // 網絡訪問是異步的,回調是主線程的,因此程序員不用管在主線程更新UI的事情  
    [manager POST:@"http://localhost/login.php" parameters:dict success:^(AFHTTPRequestOperation *operation, id responseObject) {  
        NSLog(@"%@", responseObject);  
        // 提問:NSURLConnection異步方法回調,是在子線程  
        
// 得到回調之后,通常更新UI,是在主線程  
        NSLog(@"%@", [NSThread currentThread]);  
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
        NSLog(@"%@", error);  
    }];  
}  
  
#pragma mark - GET登錄  
- (void)getLogin  
{  
    AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
      
    // 原本需要拼接get訪問URL ? & =  
    NSDictionary *dict = @{@"username": @"wangwu", @"password" : @"wang"};  
      
    // 網絡訪問是異步的,回調是主線程的,因此程序員不用管在主線程更新UI的事情  
    [manager GET:@"http://localhost/login.php" parameters:dict success:^(AFHTTPRequestOperation *operation, id responseObject) {  
        NSLog(@"%@", responseObject);  
        // 提問:NSURLConnection異步方法回調,是在子線程  
        
// 得到回調之后,通常更新UI,是在主線程  
        NSLog(@"%@", [NSThread currentThread]);  
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
        NSLog(@"%@", error);  
    }];  
}  
  
@end  
@import url(http://m.shnenglu.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
posted on 2016-10-28 10:55 聶文龍 閱讀(163) 評論(0)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一区二区三区视频在线观看 | 久久成人免费网| 日韩亚洲欧美综合| 99国产精品国产精品久久| 亚洲精品日韩欧美| 日韩视频一区二区三区在线播放| 日韩视频在线播放| 一区二区三区欧美亚洲| 亚洲一区二区免费在线| 欧美一区二区三区在线| 久久琪琪电影院| 欧美国产日韩视频| 亚洲精品中文字| 亚洲一区二区三区精品在线| 亚洲欧美日韩在线播放| 久久婷婷亚洲| 欧美视频一区二区三区四区| 欧美三级午夜理伦三级中文幕| 国产精品乱码人人做人人爱| 国外成人在线视频网站| 亚洲麻豆国产自偷在线| 亚洲欧美另类国产| 欧美jizz19hd性欧美| 亚洲日本va在线观看| 亚洲精品激情| 一本久久知道综合久久| 亚洲在线黄色| 欧美本精品男人aⅴ天堂| 99国产精品一区| 久久精品国产一区二区三区| 欧美亚洲免费在线| 久久视频在线看| 蜜桃久久av一区| 国产三区二区一区久久 | 亚洲精品日韩久久| 久久久久久一区二区三区| 亚洲日本va在线观看| 亚洲欧美日韩在线| 国产精品magnet| 亚洲福利视频网站| 香蕉成人伊视频在线观看 | 亚洲国产片色| 性欧美大战久久久久久久久| 欧美大成色www永久网站婷| 国产午夜亚洲精品理论片色戒| 亚洲麻豆国产自偷在线| 免费久久久一本精品久久区| 国产精品99久久久久久人| 久久男人资源视频| 极品裸体白嫩激情啪啪国产精品| 9色精品在线| 亚洲国产一区视频| 欧美第一黄色网| 亚洲精品视频在线播放| 久久综合给合久久狠狠色| 亚洲一本视频| 欧美日韩中文字幕在线| 亚洲精品欧美日韩| 欧美韩日精品| 欧美a级片一区| 亚洲人成网站999久久久综合| 免费av成人在线| 久久精品国产一区二区三区免费看| 国产精品成人aaaaa网站| 91久久国产综合久久91精品网站 | 999在线观看精品免费不卡网站| 欧美xxxx在线观看| 亚洲欧洲视频在线| 亚洲国产精品久久精品怡红院| 久久aⅴ乱码一区二区三区| 国产精品一区二区在线观看| 亚洲欧美日本日韩| 亚洲免费在线观看视频| 国产精品在线看| 久久久999| 麻豆精品一区二区综合av| 伊人久久av导航| 欧美激情麻豆| 欧美天堂亚洲电影院在线观看| aaa亚洲精品一二三区| 久久男人资源视频| 欧美综合二区| 亚洲福利电影| 亚洲精品社区| 国产精品激情偷乱一区二区∴| 亚洲欧美国产日韩天堂区| 亚洲一区在线免费观看| 国产一区亚洲一区| 免费精品99久久国产综合精品| 免费欧美日韩| 亚洲综合欧美| 久久久久久久久岛国免费| 亚洲激情精品| 夜夜爽www精品| 黄色av成人| 亚洲黄色天堂| 国产精品午夜春色av| 夜夜爽www精品| 美女黄色成人网| 欧美二区不卡| 亚洲欧洲日本一区二区三区| 亚洲新中文字幕| 欧美婷婷久久| 欧美国产1区2区| 国产精品一区二区在线观看网站| 欧美国产精品人人做人人爱| 国产精品久久午夜| 亚洲第一黄色网| 国产视频在线观看一区 | 亚洲午夜在线| 久久亚洲视频| 亚洲午夜激情网站| 久久亚洲影院| 亚洲欧美区自拍先锋| 欧美xxx在线观看| 久久久久久亚洲精品不卡4k岛国| 欧美精品一区二区蜜臀亚洲| 久久国产主播| 国产精品国产a| 亚洲激情中文1区| 狠狠噜噜久久| 午夜精品久久久久久久久久久久 | 欧美成人综合| 国产婷婷色综合av蜜臀av | 久久成人免费电影| 欧美日韩一区国产| 亚洲韩国日本中文字幕| 国产一区二区三区最好精华液| 亚洲靠逼com| 亚洲精品美女久久7777777| 久久精品99久久香蕉国产色戒| 亚洲综合999| 国产精品久久久久久久电影| 日韩午夜免费| 一区二区动漫| 欧美另类在线播放| 亚洲黄色在线视频| 亚洲精品久久久久久一区二区 | 亚洲日本中文字幕| 亚洲欧美电影院| 亚洲美女免费视频| 国产目拍亚洲精品99久久精品 | 久久久久国产精品厨房| 亚洲性线免费观看视频成熟| 免费毛片一区二区三区久久久| 免费成人黄色片| 狠狠v欧美v日韩v亚洲ⅴ| 欧美专区在线| 欧美mv日韩mv亚洲| 亚洲人人精品| 欧美精品一区二区三区久久久竹菊| 欧美国内亚洲| 中文久久精品| 欧美三日本三级少妇三2023| 日韩一级黄色av| 欧美一级视频精品观看| 国产欧美日韩免费看aⅴ视频| 欧美一级大片在线免费观看| 久久久久国产一区二区| 国外精品视频| 欧美黄色网络| 亚洲欧美日韩专区| 老色批av在线精品| 日韩视频在线一区二区三区| 欧美成在线视频| 亚洲欧美日韩国产一区二区三区| 久久精品国产亚洲5555| 亚洲第一天堂av| 欧美日韩播放| 午夜精品网站| 亚洲国产精品精华液2区45 | 一区二区三区欧美视频| 国产精品豆花视频| 欧美在线黄色| 亚洲国产精品久久久久久女王| 在线综合欧美| 狠狠色丁香婷婷综合久久片| 免费久久99精品国产自在现线| 一区二区91| 欧美黄色免费| 午夜精品福利视频| 亚洲国产高清在线| 国产婷婷一区二区| 欧美美女喷水视频| 性色一区二区| 99这里只有精品| 欧美成在线视频| 欧美有码在线观看视频| 亚洲精品久久嫩草网站秘色 | 亚洲伦理网站| 狠狠久久婷婷| 国产精品爱久久久久久久| 奶水喷射视频一区| 午夜精品99久久免费| 91久久精品视频| 久久久人人人| 亚洲欧美在线免费观看| 亚洲国产精品一区二区尤物区 | 国产一区二区观看| 国产精品盗摄久久久|