Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios5 MKNetworkkit:从服务器获取JSONArray_Ios5_Mknetworkkit_Mknetworkengine - Fatal编程技术网

Ios5 MKNetworkkit:从服务器获取JSONArray

Ios5 MKNetworkkit:从服务器获取JSONArray,ios5,mknetworkkit,mknetworkengine,Ios5,Mknetworkkit,Mknetworkengine,我正在使用MKNewtworkkit进行网络操作,这是我的ios应用程序。我在服务器中有JSONInterface,通过它我可以检索JSONArray。我也可以在android应用程序和浏览器中获取数据,但当我尝试使用MKNetworkkit[completedOperation responseJSON]刷新数据时,返回的是零。你能帮帮我吗 MKNetworkEngine *network_engine= [[MKNetworkEngine alloc] initWithHostName:@"

我正在使用MKNewtworkkit进行网络操作,这是我的ios应用程序。我在服务器中有JSONInterface,通过它我可以检索JSONArray。我也可以在android应用程序和浏览器中获取数据,但当我尝试使用MKNetworkkit[completedOperation responseJSON]刷新数据时,返回的是零。你能帮帮我吗

MKNetworkEngine *network_engine= [[MKNetworkEngine alloc] initWithHostName:@"****.com"];
 NSMutableDictionary* params=[[NSMutableDictionary alloc] initWithCapacity:3];
[params setObject:[self.userName text] forKey:@"user"];
[params setObject:[self.password text] forKey:@"password"];
[params setObject:@" " forKey:@"meters"];
MKNetworkOperation* operation =[network_engine operationWithPath:@"q/out" params:params httpMethod:@"GET" ssl:NO]; 
[operation onCompletion:^(MKNetworkOperation *completedOperation) {
    NSLog(@"response: %@",[completedOperation responseString]);
    @try {
        NSArray *data_array=[completedOperation responseJSON];
        for (int i=0; i<[data_array count]; i++) {
            NSDictionary *dict=[data_array objectAtIndex:i];
            NSString *id=[dict valueForKey:@"mid"];
            NSString *location=[dict valueForKey:@"location"];
            NSLog(@"id:%@ , location:%@",id,location);
        }
    }

    @catch (NSException *exception) {
        NSLog(@"Exception: %@",[exception name]);
    }

} onError:^(NSError *error) {
         NSLog(@"Couldn't make network call");
}];
[network_engine enqueueOperation:operation];
MKNetworkEngine*网络引擎=[[MKNetworkEngine alloc]initWithHostName:@“***.com”];
NSMutableDictionary*参数=[[NSMutableDictionary alloc]initWithCapacity:3];
[params setObject:[self.userName text]forKey:@“user”];
[params setObject:[self.password text]forKey:@“password”];
[params setObject:@“forKey:@“meters”];
MKNetworkOperation*operation=[网络引擎操作,路径:@“q/out”参数:参数httpMethod:@“GET”ssl:NO];
[完成操作:^(MKNetworkOperation*completedOperation){
NSLog(@“响应:%@,[completedOperation responseString]);
@试一试{
NSArray*数据_数组=[completedOperation responseJSON];

对于(inti=0;i我知道这是一篇老文章,但万一其他人看到这篇文章

看起来您正在将“responseJSON”转换为NSArray,但它应该是NSDictionary

这对我有用->

    MKNetworkOperation *op = [mkNetworkEngine operationWithURLString:CONFIG_FILE_URL];
[op setShouldNotCacheResponse:YES];

[op addCompletionHandler:^(MKNetworkOperation *completedOperation) {

    NSLog(@"** Success downloading config file...");

    NSDictionary* responseJSON = completedOperation.responseJSON;


} errorHandler:^(MKNetworkOperation *completedOperation, NSError *error) {

    NSLog(@"** Failed downloading config file - error: %@",error);

}];

[mkNetworkEngine enqueueOperation:op];