NSJSONSerialization mit vorhandener Json Response

  • NSJSONSerialization mit vorhandener Json Response

    huhu, ich strauchle gerade etwas, hatte mein Model umgebastelt und aus id nen Array gemacht, nun habe ich ein Problem :)

    in meiner Methode bekomme ich einen JSON String zurück, der folgendermaßen ausschaut:

    Quellcode

    1. {"status":"ok","users":{"user":[{"user_id":"2","user_type":"3"}]},"count":1}



    kann ich diesen per NSJSONSerialization nochmals in Json umwandeln, da er mir den Array nicht richtig ausgibt, so wie ich ihn haben will, weil momentan bekomme ich per

    Quellcode

    1. NSArray *user = [login valueForKeyPath:@"users.user"];

    Quellcode

    1. (NSArray *) $9 = 0x07ae0960 {"user_id" = 2"user_type" = 3}


    zurück, ich hätte aber gern

    Quellcode

    1. (NSArray *) $9 = 0x07ae0960 ({"user_id" = 2"user_type" = 3})


    was mich auch wundert, bei meinem Array steht (NSArray *) $9 = 0x07ae0960 und bei einem Beispiel steht (NSArray *) $9 = 0x0ee26830 <__NSCFArray 0xee26830>, worin besteht da der Unterschied?
    [window close]
  • ok mal bissel mehr Code vielleicht hilft das :)

    Quellcode

    1. + (void)loginUser:(NSString *)mode withParameters:(NSDictionary *)parameters:(void (^)(NSDictionary *))login
    2. {
    3. [[AFFnBAPIClient sharedClient] setDefaultHeader:@"Accept" value:@"application/json"];
    4. [[AFFnBAPIClient sharedClient] postPath:mode parameters:parameters success:^(AFHTTPRequestOperation *operation, id JSON) {
    5. login(JSON);
    6. } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    7. NSLog(@"Error");
    8. }];
    9. }



    hier hole ich mir den eingeloggten User, dann schieb ich den User in nen Array

    Quellcode

    1. NSArray *user = [login valueForKeyPath:@"users.user"];


    und dann will ich halt den Array für jeden User, falls es mal mehrere sind, durchlaufen, nur durchläuft er nicht jeden User im Array sondern jeden Wert des Users
    [window close]

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von uniique ()

  • hmmm, nachdem ich mir das ganze jetzt nochmal ganz genau angeschaut habe, scheint es wohl an AFNetwork zu liegen, die ausgabe von AFNetwork schaut so aus

    Quellcode

    1. (id) $3 = 0x079c4f40 {
    2. count = 1;
    3. status = ok;
    4. users = {
    5. user = {
    6. "group_id" = 5; };
    7. };
    8. }



    und die von NSJSONSerialization sieht so aus

    Quellcode

    1. (NSDictionary *) $4 = 0x07d924c0 {
    2. count = 1;
    3. status = ok;
    4. users = {
    5. user = (
    6. {
    7. "group_id" = 5; }
    8. );
    9. };
    10. }


    da fehlen beim oberen die ()

    EDIT: blah, man sollte die Json Rückgabe ausm php auch richtig formatieren ^^
    [window close]

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von uniique ()