google-sheets-api - 如何在 google apis explorer 中定义 API Key?
问题描述
我只是在以下位置测试 Google Sheets API:
https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/append
我正在使用该Try this API
部分填写请求参数并执行请求(将一行附加到工作表)。
我在Step 1
这里关注:
https://developers.google.com/sheets/api/quickstart/js
为了:
- 启用 Google 表格 API
- 创建 API 密钥
因此,我有:
- 客户编号
- 客户秘密
- API 密钥
在Try this API
>Credentials
部分,有两个复选框:
- 谷歌 OAuth 2.0
- API 密钥
我尝试了uncheck
该Google OAuth 2.0
选项,以便我可以使用API Key
- 但我看不到我可以在哪里输入API Key
.
如何在该Try this API
部分中定义 API 密钥,以便我可以仅使用API Key
(而不是Google OAuth 2.0
)发出请求。
解决方案
这个答案怎么样?
问题和解决方法:
遗憾的是,在现阶段,“Try this API”无法通过手动输入 API 密钥和访问令牌直接使用。但在这种情况下,有一种解决方法。请看下图。
这是“试用此 API”的窗口。当你看到这个时,你可以看到如图所示的右上角的可点击方框。请点击它。这样,您可以看到扩展的“Try this API”,如下图所示。
在这里,请输入您要使用的所需参数。这样,您可以看到如下 curl 示例。
curl --request POST \
'https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEETID/values/RANGE:append?valueInputOption=USER_ENTERED&key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"values":[["sample value"]]}' \
--compressed
通过使用此命令,您可以通过手动输入 API 密钥和访问令牌来使用 API。
但是,这里有一个重要的点。在 Google API 中,API 密钥不能用于 GET 方法以外的方法。API 密钥只能对公开共享的内容使用 GET 方法。请注意这一点。因此,当您想通过手动输入 API 密钥和访问令牌在 Sheets API 中使用“方法:电子表格.values.append”时,请使用访问令牌。因为这个方法使用的是POST方法。这样,您就可以测试 API。此外,您可以在官方文档中查看所需的范围。
顺便说一句,当您只想使用 API 密钥时,您不需要使用--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]'
. 而且,当您只想使用访问令牌时,您不需要使用&key=[YOUR_API_KEY]
.
在展开的“Try this API”中,您还可以看到 HTTP 请求和 Javascript 的示例脚本。
笔记:
- 当您想使用 API 密钥请求 Sheets API 时,请公开共享电子表格。这样,可以使用“方法:电子表格.values.get”、“方法:电子表格.get”等GET方法来检索值。
- 当您想查看获取访问令牌的方法时,您可以在官方文档中查看,例如此处,此处。
参考:
推荐阅读
- python - Python Streamlit nltk 应用程序的 Heroku R10 和 H20 超时错误
- python - 即使我尝试先启动进程,进程也会在我调用函数后启动
- string - Groovy:将字符串标记为仅出现第 3 次分隔符
- python - 对数据框进行排序
- sql - 可以使用 sql 在月历中显示事件吗?
- python - 如果它们一起使用,如何替换令牌?
- vue.js - Nuxt JS 插件是否可以只运行一次?
- for-loop - gnuplot:在 for 循环中设置线条样式
- c# - 拆分后如何使用实体框架搜索文本?
- java - 无论如何都不会显示图像(毕加索,滑翔,异步)