2016-05-20 2 views
0

Ich führe einen HTTP-Aufruf zu einer Site, die XML-Antwortdaten erzeugt.Zugriff auf dieses zurückgegebene JSON-Objekt

Ich nehme diese Daten und analysiere den Inhalt des zurückgegebenen http get Request Aufrufs mit xml2js.parseString.

Die resultierenden Daten produziert folgendes:

{'SearchResults:searchresults':{'$':{'xsi:schemaLocation':'http://www.zillow.com/static/xsd/SearchResults.xsd http://www.zillowstatic.com/vstatic/9520695/static/xsd/ SearchResults.xsd','xmlns:xsi':'http://www.w3.org/2001/XMLSchema-instance','xmlns:  SearchResults':'http://www.zillow.com/static/xsd/SearchResults.xsd'},request:[[Object]],message:[[Object]],response:[[Object]]}} 

Wie greife ich auf die zurückgegebene Antwort?

FYI: Wenn ich JSON.Stringify() verwenden, kann ich alle Daten sehen, die ich brauche, aber es ist das JSON-Format nicht gültig und ich kann nicht auf die Daten zugreifen. Ich sollte die Daten nicht stringieren müssen, da die Daten bereits mit dem xml2js und im js-Format analysiert wurden, richtig?

Jede Hilfe sehr geschätzt.

+0

JSON.stringify (propertyInfo, null, 2); – jremi

+0

Sie sollten tatsächlich nicht mit stringify arbeiten, weil das JSON-Objekt dann kein JSON-Objekt mehr ist, sondern ein String. Wo haben Sie Probleme beim Zugriff auf das Objekt? Hast du es in eine Variable geschrieben? – Erik

+0

Danke für das Zurückschreiben, nachdem ich herumgespielt habe, war ich endlich in der Lage, in diesen "Cluster f * ck" zu bohren :) Objekte mit Arrays umwickelt mehr Arrays gewickelt ... Spaß. Jetzt bin ich in der Lage, in die tatsächlichen endgültigen JSON-Daten zu bohren, die ich in meinen Variablen speichern muss! Danke Brotha – jremi

Antwort

0

Ich bohrte nicht richtig in die JSON-Struktur. Sobald ich richtig gebohrt und die Daten in Variablen gespeichert habe, war alles in Ordnung!

Um weiter auf diese Antwort zu erweitern. Ich möchte die variable Struktur bereitstellen, die für den Zugriff auf die Daten notwendig war.

Zum Beispiel:

propertyInfoJSONPath = 
propertyInfo['SearchResults:searchresults'].response[0].results[0].result[0]; 

nichts darüber war furchtbar komplex, es ist jedoch erforderlich, wenn Sie JSON-Daten zugreifen, die Objekte, die in ihnen haben Arrays enthält, um sicherzustellen, immer daran zu erinnern, Drilldown und Geben Sie den Anfangsindex 0 an.

+0

"Drilling richtig" ist keine Antwort. Zeigen Sie, wie Sie das Problem gelöst haben, das Sie hatten. – JAAulde

+0

Nur aktualisiert mit einigen zusätzlichen Details. Vielen Dank – jremi