JSON analizador devuelve Null

Estoy tratando de aprender a analizar datos JSON para poder manejar grandes bases de datos. Escribí un código para iniciar sesión en un sitio web.

Tengo los siguientes datos JSON de una solicitud de inicio de sesión exitosa:

<code>JSON string : correct username and password [{"user_id":"7","first_name":"dada","last_name":"Kara","e_mail":"yaka@gmail","fullname":"Dada Kara","forum_username":"ycan"}]
</code>

y uso el siguiente código para analizar pero no lo analiza

<code>-(IBAction)loginButton:(id)sender{

    NSString *username = usernameTextfield.text; 
    NSString *password = passwordTextfield.text;

    NSMutableURLRequest *request =[NSMutableURLRequest requestWithURL:[NSURL URLWithString:kPostUrl]];
    [request setHTTPMethod:@"POST"];

    NSString *post =[[NSString alloc] initWithFormat:@"e_mail=%@&password=%@", username, password];
    [request setHTTPBody:[post dataUsingEncoding:NSASCIIStringEncoding]];

    NSURLResponse *response;
    NSError *err;

    NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&err];
    //NSString *responseStr = [NSString stringWithUTF8String:[responseData bytes]];
    //NSLog(@"Response : %@", responseStr);

    NSString *json_string = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
    NSLog(@"JSON string : %@", json_string);

    SBJsonParser *parser = [[SBJsonParser alloc] init];
    NSDictionary *responseObj = [parser objectWithString:json_string error:nil];
    NSArray *name = [responseObj objectForKey:@"first_name"];

    NSLog(@"Name : %@", name);
}
</code>

El resultado de miNSLog porque el nombre esNULL

¿Dónde está el problema y cómo puedo analizar esos datos para que, cuando se trata de muchas filas, pueda guardarlos en la base de datos local de FMDB en el iPhone?

------------------------------EDITAR------------------- --------------------------------------------

El problema real fue la respuesta. La cadena JSON del servidor incluía el inicio de eco de la cadena, el analizador json solo analiza entre comillas dobles, por lo que solo necesitaba recortar el eco de la cadena y analizar la nueva cadena.

y el bingo!

<code>//trim in coming echo
    NSString *newString1 = [json_string stringByReplacingOccurrencesOfString:@"correct username and password\n" withString:@""];



    SBJsonParser *parser = [[SBJsonParser alloc] init];

    NSArray *responseObj = [parser objectWithString:newString1 error:nil];

    NSDictionary *dataDict = [responseObj objectAtIndex:0];

    NSString *userID = [dataDict objectForKey:@"user_id"];

    NSLog(@"user_id: %@", userID);
</code>

salida: user_id: 7

Respuestas a la pregunta(2)

Su respuesta a la pregunta