簡體   English   中英

在 Google 表格中讀取 JSON 數據

[英]Reading JSON data in Google Sheets

我正在嘗試將 IEXAPI 中的 JSON 數據導入 Google 表格,並在此處找到以下 function :

function IMPORTJSON(url,xpath){

  try{
    var res = UrlFetchApp.fetch(url);
    var content = res.getContentText();
    var json = JSON.parse(content);

    var patharray = xpath.split("/");

    for(var i=0;i<patharray.length;i++){
      json = json[patharray[i]];
    }

    if(typeof(json) === "undefined"){
      return "Node Not Available";
    } else if(typeof(json) === "object"){
      var tempArr = [];

      for(var obj in json){
        tempArr.push([obj,json[obj]]);
      }
      return tempArr;
    } else if(typeof(json) !== "object") {
      return json;
    }
  }
  catch(err){
      return "Error getting data";  
  }

}

我試圖閱讀的 JSON 是:

    [{
    "symbol":"AAPL",
    "sector":"electronictechnology",
    "securityType":"cs",
    "bidPrice":0,
    "bidSize":0,
    "askPrice":0,
    "askSize":0,
    "lastUpdated":1587067200000,
    "lastSalePrice":286.48,
    "lastSaleSize":100,
    "lastSaleTime":1587067199848,
    "volume":357754
}]

但是,當我在 Google 表格中調用 function 時,我收到錯誤Node Not Available

=IMPORTJSON("https://cloud.iexapis.com/stable/tops?token=MY_API_KEY&symbols=aapl", "symbol")

我不明白出了什么問題,因為symbol是 JSON 中的根節點。 有人可以解釋一下嗎?

您的 object 包裝在一個數組中。

json = json[0][patharray[i]];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM