iOS NSURLConnection字典或数组
我有一个NSURLConnection,返回可以是字典或数组 如何知道什么是响应字典或数组,以便我进行适当的序列化iOS NSURLConnection字典或数组,ios,nsurlconnection,Ios,Nsurlconnection,我有一个NSURLConnection,返回可以是字典或数组 如何知道什么是响应字典或数组,以便我进行适当的序列化 - (void)connectionDidFinishLoading:(NSURLConnection *)connection { NSError* error; NSDictionary* jsonDicto = [NSJSONSerialization JSONObjectWithData:self
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
NSError* error;
NSDictionary* jsonDicto = [NSJSONSerialization
JSONObjectWithData:self.receivedData
options:kNilOptions
error:&error];
NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData:self.receivedData
options:kNilOptions
error:&error];
}
干杯。)用这个:
id response = [NSJSONSerialization JSONObjectWithData:self.receivedData
options:kNilOptions
error:&error];
if([response isKindOfClass:[NSArray class]]) {
//Response is array
}
else if([response isKindOfClass:[NSDictionary class]]) {
//Reponse is Dictionary
}
使用以下命令:
id response = [NSJSONSerialization JSONObjectWithData:self.receivedData
options:kNilOptions
error:&error];
if([response isKindOfClass:[NSArray class]]) {
//Response is array
}
else if([response isKindOfClass:[NSDictionary class]]) {
//Reponse is Dictionary
}
您应该首先检查是否得到了内容为JSON的响应。您可能会得到一个指示错误的响应,在这种情况下,服务器通常会发送html。也就是说,首先检查状态代码是否等于200(OK),以及响应的MIME类型,该类型应为
application/json
。您应该首先检查是否得到内容为json的响应。您可能会得到一个指示错误的响应,在这种情况下,服务器通常会发送html。也就是说,首先检查状态代码是否等于200(OK),以及响应的MIME类型,它应该是application/json
。