网站搜索

javascript - Office 脚本一直返回获取失败错误。代码在 Google 表格和 Python 中可以运行


尝试在 Excel Office 脚本中运行以下代码,但它一直返回“超过最大调用堆栈大小”错误

    async function main(workbook: ExcelScript.Workbook) {
        // Your code here
        const cuslocation = "New York"
        const endpoint = "http://api.weatherstack.com/current?access_key=****367d8059062daa61b5**********&query="+ colocation;
        const response = await fetch(endpoint)
        console.log(response. Text());
    }

正在学习 Office 脚本,所以正在制作这个简单的 API 调用,并尝试将数据记录到 Excel 表格中。

答案#1

这对我有效:

async function main(workbook: ExcelScript.Workbook) {
  const endpoint = "https://jsonplaceholder.typicode.com/todos/1" ;
  const response = await fetch(endpoint)
  let json: unknown = await response.json()
  console.log(JSON.stringify(json));
}

我使用了我自己的 URL,因为你的 API 密钥已过期。你应该可以很容易地将你的 URL 替换到“endpoint”中。

顺便说一下,在你上面的例子中,“New York”需要编码为“New%20York”。这是我用来编码字符串的网站:https://meyerweb.com/eric/tools/dencoder/。