2016-09-14 20 views
0

私のウェブサイトから外部APIシステムを呼び出そうとしています.Ajaxレスポンスでは、次のデータを取得します。jsonレスポンスから特定のフィールド値を取得する方法

object(stdClass)#3 (3) { 


["status"]=> 
    string(7) "success" 
    ["code"]=> 
    int(200) 
    ["data"]=> 
    object(stdClass)#4 (3) { 

    ["desktop_url"]=> 
    string(113) "http://landing.beta.learning.social/remote?token=a_token_value" 

    ["mobile_url"]=> 
    string(115) "http://m.landing.beta.learning.social/remote?token=a_token_value" 

    } 
} 

は、私は次のコードで試してみましたそのfield.IからURLとページをリダイレクトすることができ、このresponse.Soからdesktop_urlフィールドの値を取得する必要があります。

$.ajax({ 
    type: "POST", 
    url: path, 
    data: "email=" + $("#email_data").val() + "&fname=" + $("#fname_data").val()+"&grade="+$("#gradeID_data").val()+ 
    "&lastname="+$("#lname_data").val(), 
    success: function(message){ 
    $(message).map(function(item){console.log (item.data);}); 
    } 
}); 

これは私のために働いて、私に次のエラー

Error: Syntax error, unrecognized expression: object(stdClass)#3 (3... 
+0

からの応答をエンコード。 –

答えて

3

を与えていないあなたは、JSONに必要な、これは有効なJSON配列でないAPI呼び出し

<?php 
$response = $api->call($params[,...]); 


header('content-type:application/json'); 
exit(json_encode($response)); 
+0

私はapi呼び出しでレスポンスをエンコードしようとしましたが、これは 'string(416) '" "ステータス\":\ "成功\"、\ "コード\":200、\ "トークン\ ":\"トークン \ "、\" desktop_url \ ":\" http:\\\/\\\/landing.beta.learning.social \\\/remote?トークン=トークン \ "、\"モバイル_url \ ":\" http:\\\/\\\/m.landing.beta.learning.social \\\/remote?token =トークン \ – Techy

+0

'json_decode($ response、true);' '' $ responseStr = var_export($ response、true); '' –

+0

'のように見える応答をデコードしようとすると、console.logから 'desktop_url'を得ることができます.data.desktop_url) 'あなたの成功関数 – andrew

関連する問題