我写了一个JavaScript程序来读取已经工作了几个月的Google表格中的数据。最近,我使用的托管公司与另一个系统合并,并且所有内容都已成功转移。 (我最初使用Bitballoon,后来与Netlify Drop合并。)
进行此更改后,我的程序停止运行,因此使我相信问题出在新服务器上。然后,我尝试将站点托管在000webhost上,但是如果这样做不起作用,我不知道该怎么办。我有几个页面,现在都有相同的问题,并且从工作时间到停止工作都没有代码更改。
错误消息出现在浏览器控制台中:
未捕获的异常[对象对象]
这是我使用的代码(来自Google's example JS for spreadsheets.values.get
):
function initClient() {
console.log("initClient happened");
var API_KEY = /* API KEY*/;
var CLIENT_ID = /*client ID*/;
// TODO: Authorize using one of the following scopes:
// 'https://www.googleapis.com/auth/drive'
// 'https://www.googleapis.com/auth/drive.file'
// 'https://www.googleapis.com/auth/drive.readonly'
// 'https://www.googleapis.com/auth/spreadsheets'
// 'https://www.googleapis.com/auth/spreadsheets.readonly'
var SCOPE = 'https://www.googleapis.com/auth/spreadsheets';
gapi.client.init({
'apiKey': API_KEY,
'clientId': CLIENT_ID,
'scope': SCOPE,
'discoveryDocs': ['https://sheets.googleapis.com/$discovery/rest?version=v4'],
}).then(function() {
gapi.auth2.getAuthInstance().isSignedIn.listen(updateSignInStatus);
updateSignInStatus(gapi.auth2.getAuthInstance().isSignedIn.get());
});
}
function handleClientLoad() {
console.log("handleClientLoad");
gapi.load('client:auth2', initClient);
}
initClient()
在页面首次加载时被调用,然后触发一组进行API调用的函数。但是,它不再超出了请求读取权限的要求,这正是代码的这一部分所要做的。
据我所知,问题出在initClient
函数中,但是我不确定。我将其追溯到gapi.client.init
,所以我认为问题出在此。
我将不胜感激。