使用 Google Fusion Table REST API 修复“403 Forbidden”错误
Fix "403 Forbidden" Error with Google Fusion Table REST API
背景
我创建了一个 Google Fusion Table,并将其设置为 public。
我正在尝试使用 Google 的 Rest API 访问内部数据。
我使用的是 API 密钥而不是 OEmbed。
table ID 是 17I-oLcU_9RNosUEtUBMS-k4MlBDCKNvipL00DHBI
,所以我的查询结果为:
https://www.googleapis.com/fusiontables/v2/query?sql=SELECT * FROM 17I-oLcU_9RNosUEtUBMS-k4MlBDCKNvipL00DHBI&key=APIKEY
问题
我返回 403 禁止错误。我已经用 Google 网站上的一些示例测试了我的 API 密钥,并取回了工作数据。但是当我输入我的 table ID 时,我得到了这个:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "Forbidden"
}
],
"code": 403,
"message": "Forbidden"
}
}
问题:
我还需要做些什么吗?
答案在 Google 的官方文档中没有很好的记录,但事实证明还有一个比共享设置更深的设置。
转到:
文件 -> 关于此 table
这将弹出一个叠加层。点击 "Edit table information" link.
这会将您带到一个新页面。从那里,select 显示允许下载的复选框。
一旦我更改了它,我的错误立即消失了。
我使用授权服务帐户通过 api 创建和删除表。执行批量删除后,http 禁止错误开始返回。我在我的删除功能中添加了重试,并再次发送了几次垃圾邮件。此时删除完全失败。
阅读此 post 后,我使用标志更新了现有表的 "isExportable" 属性。每次通过时,只有少数表格会更新。其余的更新调用返回了 http 禁止的错误。
那些确实更新的我可以通过api删除。我现在坚持使用 10 个不会删除或更新的表。我创建了 "isExportable" 设置为 "true" 的新表,它们总是可以正常删除。
"isExportable" 在融合表中的处理方式似乎存在问题。
24 小时后我回来查看,挂起的表已被删除。似乎后台进程最终处理了删除。
我希望这对其他人有帮助。
背景
我创建了一个 Google Fusion Table,并将其设置为 public。
我正在尝试使用 Google 的 Rest API 访问内部数据。
我使用的是 API 密钥而不是 OEmbed。
table ID 是 17I-oLcU_9RNosUEtUBMS-k4MlBDCKNvipL00DHBI
,所以我的查询结果为:
https://www.googleapis.com/fusiontables/v2/query?sql=SELECT * FROM 17I-oLcU_9RNosUEtUBMS-k4MlBDCKNvipL00DHBI&key=APIKEY
问题
我返回 403 禁止错误。我已经用 Google 网站上的一些示例测试了我的 API 密钥,并取回了工作数据。但是当我输入我的 table ID 时,我得到了这个:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "Forbidden"
}
],
"code": 403,
"message": "Forbidden"
}
}
问题:
我还需要做些什么吗?
答案在 Google 的官方文档中没有很好的记录,但事实证明还有一个比共享设置更深的设置。
转到:
文件 -> 关于此 table
这将弹出一个叠加层。点击 "Edit table information" link.
这会将您带到一个新页面。从那里,select 显示允许下载的复选框。
一旦我更改了它,我的错误立即消失了。
我使用授权服务帐户通过 api 创建和删除表。执行批量删除后,http 禁止错误开始返回。我在我的删除功能中添加了重试,并再次发送了几次垃圾邮件。此时删除完全失败。
阅读此 post 后,我使用标志更新了现有表的 "isExportable" 属性。每次通过时,只有少数表格会更新。其余的更新调用返回了 http 禁止的错误。
那些确实更新的我可以通过api删除。我现在坚持使用 10 个不会删除或更新的表。我创建了 "isExportable" 设置为 "true" 的新表,它们总是可以正常删除。
"isExportable" 在融合表中的处理方式似乎存在问题。
24 小时后我回来查看,挂起的表已被删除。似乎后台进程最终处理了删除。
我希望这对其他人有帮助。