2016-06-06 3 views
0

Hallo Ich arbeite mit Response Antwort fein immer Aber während ich das Parsen es nil.first dies zeigt, ist meine AntwortWie jsonData parsen?

{ 
"type": "1", 
"item": "Order created successfully.", 
"order_id": "7" 
} 
{ 
"multicast_id": 9215180185089775977, 
"success": 1, 
"failure": 0, 
"canonical_ids": 0, 
"results": [{ 
    "message_id": "0:1465191236656122%86acb02ff9fd7ecd" 
    }] 
} 

Hier ist mein Code

NSData * urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 


      NSLog(@"Response code: %ld", (long)[response statusCode]); 

      NSString *responseData = [[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding]; 
      NSLog(@"Response ==> %@", responseData); 

      if (urlData) 
      { 
      jsonData=[[NSDictionary alloc] init]; 
       jsonData = [NSJSONSerialization 
          JSONObjectWithData:urlData 
          options:NSJSONReadingMutableLeaves 
          error:nil]; 

Wie kann ich analysieren diese Art von Antwort?

+0

Welche Art von Problem erscheint? – Vyacheslav

+0

jsonData zeigen Nil.But wo als AntwortData über Reaktion erhalten. – Bittoo

+0

Ja, ich habe versucht, dass auch – Bittoo

Antwort

0

Ihre json

{ 
"type": "1", 
"item": "Order created successfully.", 
"order_id": "7" 
} 
{ 
"multicast_id": 9215180185089775977, 
"success": 1, 
"failure": 0, 
"canonical_ids": 0, 
"results": [{ 
    "message_id": "0:1465191236656122%86acb02ff9fd7ecd" 
    }] 
} 

zum Beispiel nicht korrekt ist, haben Sie vergessen ein Komma/Tag oder Schließen/Öffnen geklam- mert sind falsch. Versuchen Sie Folgendes zu verwenden:

{ 
    "type": "1", 
    "item": "Order created successfully.", 
    "order_id": "7", 

    "multicast_id": 9215180185089775977, 
    "success": 1, 
    "failure": 0, 
    "canonical_ids": 0, 
    "results": [{ 
     "message_id": "0:1465191236656122%86acb02ff9fd7ecd" 
     }] 
    } 
0

Verwenden Sie nsurlconnection, um die jsonData abzurufen. müssen Sie die NSURLRequest die Anforderung und NSURLConnection erzeugen Verbindung herzustellen .Sobald Sie Verbindung .Es gibt einige Delegierte aus nsurlconnectiondelegate die Ihnen die json bekommen können data.and nach, dass Sie analysieren die Daten einfach

+0

Aber Was ist das Problem im obigen Code andere URLs funktioniert gut mit dem gleichen Code – Bittoo

+0

ich denke, y ou sollte alle Schlüssel und Wert doppelt angeben, als es den Nullwert nicht zeigt .try es ... – xcodeGeek

+0

Entschuldigung, wenn Sie sich nicht kümmern, verstand ich keinen Beispielcode – Bittoo

0

Ihre Antwort überprüfen auf http://jsonlint.com/. Dies zeigt an, ob Ihre Antwort gültig ist oder nicht.

A JSON Antwort sollte ein einzelner NSDictionary oder NSArray sein. Aber Sie haben zwei Wörterbücher.

Um zu überprüfen, ob Ihre Antwort gültig ist oder nicht programmatisch, verwenden Sie diese: -

NSError *error; 
if ([NSJSONSerialization JSONObjectWithData:data 
            options:kNilOptions 
             error:&error] == nil) 
{ 
    // Handle error 
} 

Wenn seine Gültigkeit Sie mit Ihrer Umwandlung erfolgen können.