【发布时间】:2017-07-01 10:15:21
【问题描述】:
我将来自 Google 电子表格的 JSON 数据用于 2 个移动应用程序(iOS 和 Android)。可以使用 HTML 或 XML 输出相同的信息,在这种情况下,我使用的是 HTML,因此每个人都可以理解显示的信息(来自电子表格)。唯一合乎逻辑的方法是不使用身份验证 (O'Auth) 是通过公共 URL 注入。 Information about what I’m talking can be found here。为了理解我在问什么,您必须实际单击链接并亲自查看。我不知道该怎么“称呼”我要问的一些事情,因为谷歌的文档很差,不是我自己的错。
在我的应用程序中,我有一个搜索功能,可以按照以下方式查询电子表格(使用 URL 请求),
我选择我的列(A、B、C、D 和 E)并询问(Google)只返回 B 列包含单词 cat 的行。我再次强调,这是通过 URL 地址完成的(inject 是正确的术语)。我几乎不能使用通常在 ArrayFormula 或 ImportRange 等电子表格中工作的任何函数/公式。事实上,我只能访问 10 个语言条款(阅读之前的链接)。我对电子表格和数据库有相当的了解,并且从它们获取信息的 URL 方法是相似的,它们绝不是一回事。
现在,我想在 URL 中指出这部分
tq?tqx=out:html&tq=select+A,B,C,D,E+where+(B+contains"Cat")&gid=0
输出类型,这里是 HTML
tqx=out:html
查询开始
&tq=
选择 A-E 列
select+A,B,C,D,E
返回关于猫的具体信息
where+(B+contains"Cat")
这可能是我的问题中最重要的部分。这用于指定正在查询的表(Tab)。
&gid=0
如果 gid 从 gid=0 更改为 gid=181437435,则返回的数据来自电子表格的第二个表。不必发出 2 个请求来搜索两个表,有没有办法在一个请求中同时执行这两个请求? (就像将 2 结合起来)
有一个 AND 子句,我在整个 url 上都试过了
select+A,B,C,D,E+where+(B+contains%20"Cat")&gid=181437435+AND+select+A,B,C,D,E+where+(B+contains%20"Cat")&gid=0
我什至将gid 翻转并放在其他地方,但它似乎只通过url 中的最后一个(gid),无论做什么都只返回1 个表。顺便说一句,分组是允许的。如果这不能解决我的问题,那么让我知道你在哪里迷路了。此外,我会发布更多 URL 以便于访问,但我有点喜欢这个 2 URL 最大程序。
【问题讨论】:
标签: google-sheets google-spreadsheet-api