在iOS開(kāi)發(fā)中,經(jīng)常需要通過(guò)調(diào)用java接口來(lái)獲取數(shù)據(jù),而這些數(shù)據(jù)通常以json格式返回。為了便于處理這些數(shù)據(jù),需要對(duì)其進(jìn)行格式化。下面就介紹一下如何使用iOS調(diào)用java接口進(jìn)行json格式化。
首先,需要使用到iOS自帶的NSURLRequest和NSURLSession來(lái)發(fā)送網(wǎng)絡(luò)請(qǐng)求,并將返回的數(shù)據(jù)轉(zhuǎn)化為json數(shù)據(jù)。具體代碼如下:
NSURL *url = [NSURL URLWithString:@"http://java-api.com/data"]; NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; [request setHTTPMethod:@"GET"]; NSURLSessionDataTask *task = [[NSURLSession sharedSession] dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) { if (error) { NSLog(@"Error: %@", error); } else { NSError *jsonError = nil; NSDictionary *jsonData = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&jsonError]; if (jsonError) { NSLog(@"JSON Error: %@", jsonError); } else { NSLog(@"JSON Data: %@", jsonData); } } }]; [task resume];
其中,NSURL表示請(qǐng)求的地址,NSMutableURLRequest表示請(qǐng)求的方式,NSURLRequest配置請(qǐng)求的參數(shù)和請(qǐng)求的方法(GET或POST)。NSURLSessionDataTask表示網(wǎng)絡(luò)請(qǐng)求的具體操作,data表示返回的原始數(shù)據(jù)。通過(guò)NSJSONSerialization將原始數(shù)據(jù)轉(zhuǎn)化為NSDictionary類型的數(shù)據(jù),并進(jìn)行格式化顯示。
最后使用pre標(biāo)簽將上述代碼粘貼到html頁(yè)面中,即可對(duì)Java接口返回的json數(shù)據(jù)進(jìn)行格式化處理。