来自webservice调用的Json输出显示

时间:2017-07-19 21:56:33

标签: json

我对JSON / Jquery世界很陌生,所以请忍受我的无知。

我正在尝试读取webservice调用返回的Json数据的输出,如下所示:

我的网络服务电话在这里:

http://example.com/getPortfolioListByContact.json?component=C1&contactId=510297

将数据返回为:

{
  "data": [
    {
      "PORTFOLIO_ID": 13495,
      "SUBSCRIPTION_ID": 1653,
      "STATUS": "ACTIVE",
    }
  ],
  "success": true
} 

现在我正在尝试以字符串形式返回的Json数据发出警报,并希望将其作为Parsed /

<script>
var parsed ; 
$.getJSON("http://example.com/getPortfolioListByContact.json?component=C1&contactId=510297", function(data){
    alert(data.SUBSCRIPTION_ID);
});
parsed = JSON.parse(data); 
alert(parsed) ; 
</script> 

我在Alert中收到“未定义”的响应。我可能没有正确处理成功处理程序。我想获取返回的json数据的每个值和特定值。 请帮忙。

由于

2 个答案:

答案 0 :(得分:0)

您在范围内呼叫data

<script>
var parsed ; 
var myData;
$.getJSON("http://example.com/getPortfolioListByContact.json?component=C1&contactId=510297", function(data){
 myData = data;
    alert(data.SUBSCRIPTION_ID);
});
parsed = JSON.parse(myData); 
alert(parsed) ; 
</script> 

答案 1 :(得分:0)

  

我在Alert中得到了响应&#34; Undefined&#34;。

原因:您正在尝试解析范围外的API响应。由于data对象只能在API调用返回的promise中访问。

试试这个希望它会按照您的期望

运作
$.getJSON("http://example.com/getPortfolioListByContact.json?component=C1&contactId=510297", function(res) {
    var data = res.data;
    alert(JSON.stringify(data));
});