0

我有一个融合表,我希望对我通过 Google Docs 创建的进行插入和更新。

我正在尝试使用 OAUTH 访问此表并通过 WebApp 和 Java 客户端进行插入和更新

我可以使用我的访问令牌(我通过传递我的客户端密码和刷新令牌凭据接收到的)对这个表进行选择,以编程方式没有问题。

String sql = java.net.URLEncoder.encode("SELECT * FROM " + tableId, "ISO-8859-1");
uri = "https://www.google.com/fusiontables/api/query?access_token=" + token + "&sql=" + sql;

以上从表中返回了我的行

但是,当我尝试插入时,我得到下面的消息

服务器返回 HTTP 响应代码:403 用于 URL:https ://www.google.com/fusiontables/api/query? access_token .....

仅当我首先以编程方式从 Google API 中创建表时,插入才会起作用。我怎样才能确保我可以访问相同的表。我通过“Google Docs”下的新表选项创建,我看到哪里有一个共享按钮,但我不知道打开表以进行插入的步骤,更新我可以执行插入而不会得到 403 响应谷歌服务器以编程方式。我不是楼主吗?如何在表中注册我的 API 凭据以进行插入/更新?

4

1 回答 1

1

我自己对 Fusion 表还很陌生,但我最近构建了一个 javascript Web 应用程序,它可以插入/更新表。

首先,如果它是一个 javascript 网络应用程序,您需要授权更新/插入将来自的 URL。通过 Google API 控制台执行此操作...

https://code.google.com/apis/console/

...在“API 访问”菜单项下——“JavaScript 起源”是您需要添加服务器主机名的位置。对表的任何插入/更新都需要通过 SSL 连接进行(即相关页面需要以 HTTPS:// 开头

如果您使用来自服务器端代码的 POST 数据,则无需担心这一点——在该实例中,重要的是(我认为)确保该数据仍通过 SSL 传输(尽管不是 100 %肯定,因为我只在客户端javascript领域工作)。

还要确保将 Fusion Table API 切换为 ON(在“服务”菜单下)。

我找到了这两页...

http://code.google.com/p/google-api-javascript-client/wiki/Authentication https://developers.google.com/fusiontables/docs/v1/using#auth

...对于了解身份验证过程和此示例页面非常有用...

http://gmaps-samples.googlecode.com/svn/trunk/fusiontables/javascript-api.html

......实际上提供了结束我的挥霍的具体代码,并让我在将数据推送到我的融合表方面取得了一些进展。

于 2012-07-17T04:55:02.793 回答