Google 用于获取 Fitbit 数据的 Apps 脚本中的服务器错误
Server error in Google Apps script for fetching Fitbit data
我有一个 Google spreadsheet 和一个脚本来获取工作正常的 Fitbit 数据,但我有任何其他的,在重要的部分是相同的给我这个尝试授权时出错:
"We're sorry, a server error occurred. Please wait a bit and try again"
我已经使用记录器确定这发生在以下行:
var result = UrlFetchApp.fetch("https://api.fitbit.com/1/user/-/profile.json", options);
全部代码在这里:https://jsfiddle.net/j72qbe08/(这大部分是我从网上搜索到的代码复制过来的)
当我将其复制到新的传播sheet 并尝试授权时,仍在工作的其他现有传播sheet 的代码也有相同的错误。但是当我第一次遇到这个错误时,我并不是从一个新的传播sheet开始的,它是一个现有的sheet,最近运行良好。
它应该会打开一个对话框,上面写着 "Authorization required",然后是一个 window,让您可以登录 Fitbit。但它并没有这样做。
大概是 Google 脚本编辑器的问题,因为另一个传播sheet 仍然有效。
谢谢
编辑:根据 this page Google 已弃用对 OAuth1 的支持,并计划于 4 月 20 日关闭。现在才 4 月 15 日,但也许他们提前关闭了?不确定这是否解释了什么。 Fitbit API 仍然不兼容 OAuth2
编辑 2:
"February 23, 2015: We will revoke a progressively larger number of access tokens on an ongoing basis, until most users are affected."
猜猜这可以解释它。
如果 fitbit api 只使用 Oauth1,您可以使用这个 Oauth1 库来建立连接。
https://github.com/googlesamples/apps-script-oauth1
readme.md 显示了如何设置它。
我有一个 Google spreadsheet 和一个脚本来获取工作正常的 Fitbit 数据,但我有任何其他的,在重要的部分是相同的给我这个尝试授权时出错: "We're sorry, a server error occurred. Please wait a bit and try again"
我已经使用记录器确定这发生在以下行:
var result = UrlFetchApp.fetch("https://api.fitbit.com/1/user/-/profile.json", options);
全部代码在这里:https://jsfiddle.net/j72qbe08/(这大部分是我从网上搜索到的代码复制过来的)
当我将其复制到新的传播sheet 并尝试授权时,仍在工作的其他现有传播sheet 的代码也有相同的错误。但是当我第一次遇到这个错误时,我并不是从一个新的传播sheet开始的,它是一个现有的sheet,最近运行良好。
它应该会打开一个对话框,上面写着 "Authorization required",然后是一个 window,让您可以登录 Fitbit。但它并没有这样做。
大概是 Google 脚本编辑器的问题,因为另一个传播sheet 仍然有效。
谢谢
编辑:根据 this page Google 已弃用对 OAuth1 的支持,并计划于 4 月 20 日关闭。现在才 4 月 15 日,但也许他们提前关闭了?不确定这是否解释了什么。 Fitbit API 仍然不兼容 OAuth2
编辑 2: "February 23, 2015: We will revoke a progressively larger number of access tokens on an ongoing basis, until most users are affected." 猜猜这可以解释它。
如果 fitbit api 只使用 Oauth1,您可以使用这个 Oauth1 库来建立连接。
https://github.com/googlesamples/apps-script-oauth1
readme.md 显示了如何设置它。