1. 程式人生 > >iOS 使用 WebServer 介面

iOS 使用 WebServer 介面

原始測試地址

http://139.129.204.254:8081/DataWebService.asmx?op=UpSqliteData

//雲備份和雲恢復地址

#define TCISERVICE @"http://139.129.204.254:8081/DataWebService.asmx"

#define CloudForUploadUrl [NSString stringWithFormat:@"%@/UpSqliteData",TCISERVICE]

#define CloudForRestoreUrl [NSString stringWithFormat:@"%@/DownloadSqliteData",TCISERVICE]

//AFNetworking 
[self.myAFManager POST:GetAllExhibitionsInfo parameters:dic progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        NSString *dataStr = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding];
        if (dataStr.length<80) return;
        NSArray * dataArray = [NSJSONSerialization JSONObjectWithData:[self jsonAnalysisWithData:responseObject] options:NSJSONReadingAllowFragments error:nil];
        for (NSDictionary * dic in dataArray) {
            [self.bgFMDB isSaveExhibitionWith:dic];
        }
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        theBlock(NO,@"請連結internet,獲取資料!");
}];
//去掉多餘的字串(其實就是手動去除HTML程式碼)
-(NSData *)jsonAnalysisWithData:(NSData *)dataSource{
    NSString *dataStr = [[NSString alloc] initWithData:dataSource encoding:NSUTF8StringEncoding];
    NSArray * array = [dataStr  componentsSeparatedByString:@">["];
    NSString * dataStr2 = array[1];
    NSArray * array2 = [dataStr2  componentsSeparatedByString:@"]<"];
    NSString * dataStr3 = array2[0];
    NSString * dataStr4 = [NSString stringWithFormat:@"[%@]",dataStr3];
    NSString * dataStr5 =  [dataStr4 stringByReplacingOccurrencesOfString:@" " withString:@""];
    NSData * data = [dataStr5 dataUsingEncoding:NSUTF8StringEncoding];
    return data;
}