在针对公共(即“发布到网络”并与“网络上的任何人”共享)电子表格运行时,我没有运气得到 Google Sheets API v4 的响应。
相关文件指出:
“如果请求不需要授权(例如请求公共数据),那么应用程序必须提供 API 密钥或 OAuth 2.0 令牌,或两者兼而有之 - 无论哪种选项对您来说最方便。”
为了提供 API 密钥,文档指出:
“获得 API 密钥后,您的应用程序可以将查询参数 key=yourAPIKey 附加到所有请求 URL。”
So, I should能够获得在以下 URL 的公共电子表格中列出工作表的响应:
https://sheets.googleapis.com/v4/spreadsheets/{spreadsheetId}?key={myAPIkey}
(显然,路径和查询字符串中分别提供了 id 和 key)
但是,当我执行此操作时,我收到 HTTP 401 响应:
{
error: {
code: 401,
message: "The request does not have valid authentication credentials.",
status: "UNAUTHENTICATED"
}
}
其他人可以让它在公共工作簿上工作吗?如果没有,任何从 Google 方面监控此线程的人都可以发表评论或提供工作示例吗?
我设法让这个工作。连我一开始也感到沮丧。而且,这不是一个错误。我是这样做的:
- 首先,在您的 GDC 中启用这些功能以消除身份验证错误。
-Google Apps脚本执行API
-谷歌表格API
Note:确保您在 GDC 中使用的 Google 帐户必须与您在电子表格项目中使用的帐户相同,否则您可能会收到"The API Key and the authentication credential are from different projects"
错误信息。
- Go to https://developers.google.com/oauthplayground您将在其中获取授权令牌。
- 在步骤 1 中,选择Google 表格 API v4并选择
https://www.googleapis.com/auth/spreadsheets
范围,以便您拥有机器人读取和写入权限。
- 单击授权 API 按钮。允许身份验证,然后您将继续执行步骤 2。
- 在步骤 2 中,单击兑换令牌的授权码按钮。之后,继续步骤 3。
- 在第 3 步中,是时候粘贴您的 URL 请求了。由于默认服务器方法是 GET 继续并单击发送请求按钮.
Note:确保您的 URL 请求是在Spreadsheetv4 文档.
这是我的示例 URL 请求:
https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?includeGridData=false
I got a HTTP/1.1 200 OK
它显示了我请求的数据。这适用于所有 Spreadsheetv4 服务器端进程。
希望这可以帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)