2017-09-27 14 views
-2

email_addressキーとそれぞれの値を取得できるように、このjsonレスポンスを解析する方法を教えてください。この関数で返されています。私はresponse.content.email_addressを返してみましたが、これは未定義です。それは本当にシンプルでなければならない、私はちょうどそれを正しく解析するように見えない。GETリクエストからjsonレスポンスを解析する方法

おかげ

function (error, response) { 
    if (error) { 
    console.log(error); 
    } else { 
    console.log(response); 
    } 

JSONレスポンス

content: '{"meta":{"pagination":{}},"results":[{"id":"1405904834","status":"ACTIVE","fax":"","addresses":[],"notes":[],"confirmed":false,"lists":[{"id":"1395617465","status":"ACTIVE"}],"source":"Site Owner","email_addresses":[{"id":"d39bf7e0-a2f9-11e7-909a-d4ae528442b5","status":"ACTIVE","confirm_status":"NO_CONFIRMATION_REQUIRED","opt_in_source":"ACTION_BY_OWNER","opt_in_date":"2017-09-26T20:32:33.000Z","email_address":"[email protected]"}],"prefix_name":"","first_name":"Anders","middle_name":"","last_name":"Kitson","job_title":"","company_name":"","home_phone":"","work_phone":"","cell_phone":"","custom_fields":[],"created_date":"2017-09-26T20:32:33.000Z","modified_date":"2017-09-26T20:32:33.000Z","source_details":""},{"id":"1474126978","status":"ACTIVE","fax":"","addresses":[],"notes":[],"confirmed":false,"lists":[{"id":"1395617465","status":"ACTIVE"}],"source":"Site Owner","email_addresses":[{"id":"62874c40-a398-11e7-a559-d4ae5292bb50","status":"ACTIVE","confirm_status":"NO_CONFIRMATION_REQUIRED","opt_in_source":"ACTION_BY_OWNER","opt_in_date":"2017-09-27T15:27:34.000Z","email_address":"[email protected]"}],"prefix_name":"","first_name":"","middle_name":"","last_name":"","job_title":"","company_name":"","home_phone":"","work_phone":"","cell_phone":"","custom_fields":[],"created_date":"2017-09-27T15:27:34.000Z","modified_date":"2017-09-27T15:27:34.000Z","source_details":""}]}' 
+0

JSON.parseは()の欲しいものを – rjustin

+1

可能な複製である[JavaScriptで解析JSON?](https://stackoverflow.com/questions/4935632/parse-json-in-javascript) –

+0

可能な重複[安全にJSON文字列をオブジェクトに変換する](https://stackoverflow.com/questions/45015/safely-turning-a-json-string-into-an-object) – jmoerdyk

答えて

0

あなたはそこからデータにアクセスできるようにするには、変数に保存することができJSON.parse(response) を使用することができます。

function(error, response) { 
    if (error) { 
    console.log(error); 
    } else { 
    var data = JSON.parse(response); 
    console.log(data.content.email_address) // This should print the value 
    }; 
}); 
+0

これを実行すると次のエラーが発生します、 '非同期関数のコールバックの例外:SyntaxError:予期しないトークンo I20170927-08:59:32.088(-7)? at Object.parse(native) ' –

+0

あなたのデータはすでにオブジェクトであると私は思っています。 response.results.email_addressesを試してください –

+0

このエラーが発生しました 'TypeError:プロパティを読み取れません 'email_addresses' of undefined' –

0

私は、電子メールアドレスのいずれかを取得するには、このような何かをやって終了しなければならなかったので、私は、私はループまたはそれらのすべてを取得するために何かを実行する必要がありますね。

var data = JSON.parse(response.content); 
var dataParsed = data.results[0].email_addresses[0].email_address; 
関連する問題