如何从 Atom 插件访问 public 只读 Google 电子表格?

How to access a public readonly Google spreadsheet from an Atom plugin?

我正在开发一个 Atom 包,需要从 Google 表格中的 public 只读电子表格中读取所有数据,但我不确定要做什么。

我知道我可以使用 OAuth 或 API 密钥,但这些选项中的每一个都存在问题。对于 OAuth,我需要设置一个 URI 处理程序,即使 Atom 有一个 URI 处理程序 (atom://package-name),它在 Linux 中并不容易使用,并且 Google 只允许 https:// 处理程序。现在,关于API密钥,它可以用于测试,但不能在源代码中发布,这是必须的,没有发布包。

那怎么办?只是强调需要访问的 only 是一个 public 只读电子表格,所以我想不需要特殊的访问权限。

解决方案

Public sheet 不需要使用 Google 工作表 API 从中提取他们的 json 信息,也不需要使用oAuth 2 个。您可以通过向他们发送 json GET 请求来简单地实现这一点。

要从 public sheet 中获取 json 数据,您可以使用 jQuery

$.getJSON(SHEET URL, function(data) {
  //data is the JSON string
});

Here is a tutorial 以及有关如何实现此目标的更多信息。

如果您不想使用 jQuery 获得 json,您也可以使用 JavaScript,如 this Stack Overflow question 所示。

NOTE : This will only work if your sheet is public. To achieve this go to the sharing permissions and make it Public. You also will need to publish the sheet so that you can access the json data. Go to File -> Publish to the web -> Publish.