gpt4 book ai didi

python - 无法从 Google App Engine 调用 Google Apps 脚本执行 API

转载 作者:行者123 更新时间:2023-11-28 19:14:51 24 4
gpt4 key购买 nike

简单地说,我已经按照本指南设置了“Google Apps 脚本执行 API”: https://developers.google.com/apps-script/guides/rest/quickstart/python

我可以按照指南中的说明使用我的客户端 key 从本地 Python 程序调用可执行 API。没问题。

但实际上我想使用同一个 Google 帐户从 Google App Engine 调用 API。因此,我认为“服务帐户”可能是解决方案。

因此,我将凭证对象的创​​建方式更改为:

from oauth2client.appengine import AppAssertionCredentials

credentials = AppAssertionCredentials(
'https://www.googleapis.com/auth/sqlservice.admin')

引用:developers.google.com/api-client-library/python/auth/service-accounts

但是我的 Google App Engine 网络应用程序抛出了这个错误:

INFO     2016-01-19 09:16:22,287 client.py:570] Attempting refresh to obtain initial access_token
WARNING 2016-01-19 09:16:22,297 urlfetch_stub.py:540] Stripped prohibited headers from URLFetch request: ['content-length']
{
"error": {
"code": 403,
"message": "Project has not enabled the API. Please use Google Developers Console to activate the 'script' API for your project.",
"errors": [
{
"message": "Project has not enabled the API. Please use Google Developers Console to activate the 'script' API for your project.",
"domain": "global",
"reason": "forbidden"
}
],
"status": "PERMISSION_DENIED"
}
}

我已经在我的脚本项目和 Google App Engine 项目中启用了“脚本执行 API”。有人可以帮忙吗?非常感谢

最佳答案

AppAssertionCredentials与登录用户在 App Engine 上的用户凭据不同。这将只允许您访问“存储在分配给 App Engine 应用程序本身的帐户下的数据”。您链接到的 Google Apps 脚本执行 API 示例特别需要以真正的 Google Apps 用户身份访问数据。

在您的情况下,您可能希望使用 OAuth2DecoratorFromClientSecrets使用您在本地使用的相同客户端 secret 文件,但与您的 App Engine 应用程序一起上传。

关于python - 无法从 Google App Engine 调用 Google Apps 脚本执行 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34873383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com