【发布时间】:2015-10-01 05:19:38
【问题描述】:
我试图在这里运行 Google Apps 脚本的示例脚本: https://github.com/googlesamples/apps-script-oauth2/blob/master/samples/GoogleServiceAccount.gs
我相信我从从 Google Developer Console 下载的 JSON 文件中正确设置了 PRIVATE_KEY、CLIENT_EMAIL 和 USER_EMAIL。我还在项目上启用了 Google Drive API。但我仍然在“错误:invalid_client\n no application name”对话框中收到错误。
我应该添加/更改任何代码以正确运行此示例脚本吗?
【问题讨论】:
-
PRIVATE_KEY,你是从json获取的服务账户凭证中得到的吗?您使用的是 Google for Work 帐户吗?
-
是的,我使用的是 Google for Work 帐户。我相信我们的域管理员会给予许可。我从 JSON 文件中获得了私钥。
-
这些是项目凭据,域管理员必须授予对该应用程序的访问权限,以便它可以访问域信息。在这种情况下,用户冒充。检查我在回答中提到的内容是否已由管理员完成。
-
非常感谢,杰拉尔多。由于我联系域管理员并不容易,因此我已将脚本移至 gmail 帐户。 (而且我在我的 Gmail 帐户上获得了脚本的新凭据)。但我仍然得到同样的错误。好像我犯了一个基本的错误。 USER_EMAIL 只是 gmail 地址,例如 honey@gmail.com ?
-
是的,它不适用于 gmail 帐户。模拟用户仅适用于域下的帐户。例如。用户@mydomain.com。这只有在域管理员将这些权限授予域后才会起作用。这可以通过从 Marketplace 安装应用程序或按照我在答案中提供的步骤来完成。您必须联系您的管理员并要求安装该应用程序,否则您将无法测试该应用程序。