我正在尝试列出给定电子表格的工作表。 我检索电子表格列表,然后根据文档:
然后
link
检查具有rel="http://schemas.google.com/spreadsheets/2006#tablesfeed"
.那 元素的href
值提供该电子表格的 URL 工作表源。
问题是,只有返回的某些条目包含具有该rel
属性的link
元素。
手动创建 url 使其看起来像提供的 url 也不起作用: https://spreadsheets.google.com/feeds/KEY/tables
如何列出不提供工作表源链接的电子表格的工作表?
Google 关于 GET 和 POST 的 feed URL 的文档不正确。 他们的 XML 响应示例也是不正确的。
获取给定电子表格的工作表列表 文档说:
要确定给定电子表格的工作表源的网址,请找到 电子表格 Feed 中该电子表格的条目,如 上一节。然后检查具有
link
元素rel="http://schemas.google.com/spreadsheets/2006#tablesfeed"
.那 元素的href
值提供该电子表格的 URL 工作表源。
正确的 URL 实际上位于您要查找的条目的 content
src
属性中。 它将看起来像这样:
<content type="application/atom+xml;type=feed" src="https://spreadsheets.google.com/feeds/worksheets/tNXTXMh83yMWLVJfEgOWTvQ/private/full"/>
当您准备好向工作表添加列表行时也是如此。 文档说:
然后确定要将条目发送到的相应 URL,称为 发布网址。您可以在列表源的
link
元素中找到 POST URL 那已经rel="http://schemas.google.com/g/2005#post"
.
这是错误的。 您要查找的 URL 再次位于工作表条目的 content
src
属性中。 XML 示例显示:
<content type="text">Sheet1</content>
但是您将收到的实际 XML 看起来更像:
<content type="application/atom+xml;type=feed" src="https://spreadsheets.google.com/feeds/worksheets/1mUjTRGP2ZKyNxBO-rOlqCDlDAsalfElTlzGPnYMSp2c/private/full"/>