2016-06-21 22 views
0

したがって、Node.jsを介してAPIから情報を取得する作業は、APIサーバーから返されたファイルがJSONファイルであり、これを解析する際には、JSON.parse();役立たず。私はhttps.request();http.get();、またrequest(url, function);を使ってAPIを呼び出そうとしましたが、返された値をprocess.stdout.write(returnedJson);に入れることができました。しかし、値をループしたり、選択したりすることができません特定の値を出してください。ここでNode.jsがAPIから返されたJSONを返さない

は私がJSON.parse(returnedJson);を使用する場合、私はどれconsole.log(returnedJson);

を使用しようと、私は通常とは私のリターンとして[object Object]を取得

{ 
    status: 0, 
    data: [ 
     { 
     TripId: 12442, 
     Name: John Doe, 
     Date: April 1, 1970 
     }, 

     { 
     TripId: 35314, 
     Name: Jane Doe, 
     Date: April 2, 1970 
     } 

    ] 
} 

...私はAPIから取得するJSONの一例です助けが素晴らしいだろう!私はいくつかの情報を追加する必要がある場合は私に知らせると私はしてください!

答えて

1

あなたが受け取るものは、ログに記録されるオブジェクトです。それを正しく記録したいのであれば、console.log(JSON.stringify(response, null, " "));

(引用符の間の空白は空白のスペースで、ちょうどニッコークプリントのためのものです)。

+0

「console.log'-情報をされましたより多くのテストのために..私はそれをDBやそれに何かに追加するためにデータを循環することができますstringify? –

+0

JSON形式から正しい文字列を取得するには、JSON.stringify(response)で十分です。しかし、これはその後の目的ではありません。このオブジェクトを処理するには、通常のレスポンスオブジェクトを使用する必要があります。あなたの例ではresponse.statusが0に等しいように使います。response.data [0]は配列内の最初のオブジェクトです。 –

+0

'JSON.stringify(response);を実行しました ' TypeError:循環構造をJSONに変換する ' –

0

まず、responseに有効なデータがあるかどうかを確認します。それが有効だ場合は、単に応答を使用し、 str = JSON.stringify(response); console.log(str);
あなたのような何かができる console.log(response.status); console.log(response.data[0]); etc...

[object object]は通常、あなたはすでにjavascriptオブジェクトを有することを意味します。それを解析する必要はありません。

+0

Stringifyは私にエラーを返しました... "TypeError:循環構造をJSONに変換" ..しかし、 'console.log(response.status);' 'undefined' –

0

使用しているフレームワークによっては、StringまたはObjectを取得することになります。 (オブジェクトを取得しているように見えます)。それが文字列なら

console.log(typeof(response)); 

、使用:あなたが取得しているかどうか確認するには、使用

response = JSON.parse(response); 

は、オブジェクトにそれをオンにします。

あなたがオブジェクトを持っていたら、あなたは他のJavaScriptオブジェクトと同じように「ドット」表記などを使用してプロパティにアクセスすることができます。このようなとして

console.log(response.status); 
console.log(response.data[0].TripId); 
console.log(response.data[1].TripId); 
+0

' consoleを実行しました。'TypeError:プロパティ '0'を読み込めませんでした。(エラーメッセージが表示されます) undefined ' –

+0

次に、(他の回答が推奨する)' console.log(JSON.stringify(response、null、 "")) 'をお勧めします。それはあなたにあなたのオブジェクトの構造を見せつけます。何か正しいことはありませんが、私は限られた情報で何が理解できません。 – dmansfield

+0

ええ、私もそれを試しましたが運がありません。助けてくれてありがとう!それは有り難いです! –

関連する問題