-1

次のコードを使用して、サーバーから受信した JSON 文字列に基づいて辞書を作成します。(JSONKit をダウンロードしてプロジェクトに組み込みました)。以下のコードは、サーバーから正当な JSON 文字列を返します (Android では適切に解析されます) が、それを辞書に変換しようとするとクラッシュします。

- (IBAction)submit
{
bool useSSL = true;
char *c_url="http://(rest of URL)";


NSString* url = [NSString stringWithFormat:@"%s" , c_url];
url = [NSString stringWithFormat:@"%@%@%s", url, self.label.text, "/keys"];
NSString * response = [self getDataFrom:url];


NSDictionary *dict = [response objectFromJSONString]; //generates SIGABRT!!
NSLog(@"%@",dict); 

NSString *success = [dict valueForKey:@"success"];

} 



- (NSString *) getDataFrom:(NSString *)url{
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setHTTPMethod:@"GET"];
[request setURL:[NSURL URLWithString:url]];

NSError *error = [[NSError alloc] init];
NSHTTPURLResponse *responseCode = nil;

NSData *oResponseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&responseCode error:&error];

if([responseCode statusCode] != 200){
    NSLog(@"Error getting %@, HTTP status code %i", url, [responseCode statusCode]);
    return nil;
}

return [[NSString alloc] initWithData:oResponseData encoding:NSUTF8StringEncoding]; 
}

ありがとう、サイモン

4

1 に答える 1