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

时间:2016-09-28 12:21:55

标签: php google-spreadsheet-api

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

结果是: 403 - 来电者没有权限

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

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

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

我需要使用php的函数(如file_get_contents()

从我的网站读取和编写订单数据

1 个答案:

答案 0 :(得分:4)

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

  

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

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

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

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

  3. 将访问令牌发送到API。
  4. 如有必要,请刷新访问令牌。
  5. 最后,为了帮助您使用PHP实现,您还可以将Authentication and authorization添加到引用列表中。希望有所帮助!