如何从 API 访问私有电子表格?

Gms*_*ers 5 php google-spreadsheet-api

您好,我需要从谷歌电子表格 API 访问电子表格。我启用了 Google Sheets API 并添加了 API 密钥,但这不起作用!!! https://sheets.googleapis.com/v4/spreadsheets/[my_spreadsheet_id]/values/A1?key=[my_api_key]

结果是:403 - 调用者没有权限

但是,如果我为此电子表格提供公共访问权限 ---> 它有效!!!

结果是:200 - [正确请求的数据......]

我的问题是:如何从 API 访问私有电子表格?

我需要使用 php 的函数(如 file_get_contents())从我的网站读取和写入订单数据

Tey*_*yam 6

基本上,您需要获得文档中提到的授权。

每当您的应用程序请求私人用户数据时,它必须随请求一起发送 OAuth 2.0 令牌。您的应用程序首先发送一个客户端 ID,可能还会发送一个客户端机密以获取令牌。您可以为 Web 应用程序、服务帐户或已安装的应用程序生成 OAuth 2.0 凭据。

来自OAuth 2.0 文档的更多信息,当使用 OAuth 2.0 访问 Google API 时,所有应用程序都遵循以下步骤:

  1. 从 Google API 控制台获取 OAuth 2.0 凭据。
  2. 从 Google 授权服务器获取访问令牌。

    在您的应用程序可以使用 Google API 访问私有数据之前,它必须获得授予对该 API 访问权限的访问令牌。

  3. 将访问令牌发送到 API。
  4. 如有必要,刷新访问令牌。

最后,为了帮助您使用 PHP 实现,您还可以将身份验证和授权添加到您的参考列表中。希望有帮助!