google-api - googleapis 返回错误请求

标签 google-api google-apps google-admin-sdk

已经实现了 oauth2.0 并使用范围进行了握手:

"https://www.googleapis.com/auth/userinfo.email ",
"https://www.googleapis.com/auth/userinfo.profile",
"https://www.googleapis.com/auth/admin.directory.user ",
"https://www.googleapis.com/auth/admin.directory.group ",
"https://www.googleapis.com/auth/admin.directory.orgunit ",

我拿回了一个 token

请求

$ curl -X GET  https://www.googleapis.com/oauth2/v1/userinfo?access_token=<Token>
{
 "id": "{id}",
 "email": "{email}",
 "verified_email": true,
 "name": "{name}",
 ...
}

理应如此。

但是对 admin.directory.user 命名空间的请求没有成功:

$ curl -X GET https://www.googleapis.com/admin/directory/v1/users?access_token=<Token>
{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "badRequest",
    "message": "Bad Request"
   }
  ],
  "code": 400,
  "message": "Bad Request"
 }
}

有什么好主意可以解释为什么会这样吗?

对 admin.directory.users 的请求由 https://developers.google.com/admin-sdk/directory/v1/reference/#Users 构造而成

最佳答案

我在通过 https://www.googleapis.com/auth/admin.directory.user 端点检索所有用户时遇到了同样的问题。根据文档,您可以通过将域作为参数传递来在特定域中执行此操作,或者通过传递 customer=my_customer 参数来获取所有现有用户,如下所示:

  • 检索域中的所有用户 doc :https://www.googleapis.com/auth/admin.directory.user?domain=example.com

  • 检索所有帐户用户 doc :https://www.googleapis.com/auth/admin.directory.user?customer=my_customer

在谷歌中playground oauth2您还可以通过选择 Admin SDK API directory_v1auth/admin.directory.user.readonly 来测试上述内容以授权各自的范围,然后调用上述请求。

请注意,您可能需要在 Google 管理仪表板的安全应用部分下访问 Google Playground。

关于google-api - googleapis 返回错误请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18705332/

相关文章:

charts - Google 图表表格将单元格格式设置为百分比

html - 从网站中提取数据的 Google App 脚本

c# - Google Drive SDK System.Net.Http.Primitives 版本 1.5.0.0 而不是 2.1.10.0

google-calendar-api - Google Calendar API 查看/编辑房间/资源?

node.js - Node : Google Drive API for listing all files using query

google-chrome-extension - 如何使用JavaScript从Google日历页面获取事件ID?

javascript - Google URL Shortener API 403 被禁止

javascript - 如何访问gmail API?

google-play - 如何将电子邮件组添加到 Google Play 商店 Alpha/Beta 测试

javascript - Google Apps 脚本拆分 ('\n' ) 不适用于 Google 管理目录中的数据