我在APPS脚本中创建了一个脚本,并将其部署为API可执行文件。连接到它时,我开始收到500个错误。我决定从tutorial中创建一个脚本来本地化这个错误的问题。令我惊讶的是,我得到了同样的结果。可能问题出在服务帐户上,因为我将脚本与我有服务帐户的项目相关联,并尝试对其进行授权。在
我读到用服务帐户连接到执行API时出现问题,这在今天仍然是正确的。在
***更新:使用OAuth2用户客户端ID时,我已成功使用教程脚本访问了执行API。 使用服务帐户连接到执行API是否仍有问题?在
以下是我作为API可执行文件部署到具有服务帐户的项目的应用程序脚本:
/**
* The function in this script will be called by the Apps Script Execution API. */
/**
* Return the set of folder names contained in the user's root folder as an
* object (with folder IDs as keys).
* @return {Object} A set of folder names keyed by folder ID.
*/
function getFoldersUnderRoot() {
var root = DriveApp.getRootFolder();
var folders = root.getFolders();
var folderSet = {};
while (folders.hasNext()) {
var folder = folders.next();
folderSet[folder.getId()] = folder.getName();
}
return folderSet;
}
这是我从教程中获取的部分修改代码。我改为使用服务帐户:
^{pr2}$以下是我的回复中的HttpError内容:
b'{\n "error": {\n "code": 500,\n "message": "Internal error
encountered.",\n "errors": [\n {\n "message": "Internal error
encountered.",\n "domain": "global",\n "reason":
"backendError"\n }\n ],\n "status": "INTERNAL"\n }\n}\n'
更新:在使用OAuth2用户客户端ID时,我已使用教程脚本成功访问了Execution API。
我仍然无法使用服务帐户及其凭据访问执行api。 我只能用OAuth2客户端ID连接到执行API
所以现在,我建议使用2个帐户来访问googlesheets api和OAuth2客户机ID的执行api
相关问题 更多 >
编程相关推荐