Google maps api 3 访问fusion表

Google maps api 3 访问fusion表,google-maps-api-3,google-fusion-tables,Google Maps Api 3,Google Fusion Tables,我想在我的网页上显示一些地图图层,所以我决定试试这个谷歌服务。由于数据收集在服务器的数据库中,我选择使用一个服务帐户,如前所述,然后使用php脚本中生成的私钥 当创建表并插入一些测试值时,一切正常。我得到了表Id,我可以从脚本中使用它。问题是我不知道如何从web浏览器访问这些表。在我的API控制台中,使用情况统计数据显示得很好,但当使用我的帐户登录到Google Drive时,我在其中没有看到任何表格 如果可能的话,我应该在哪里访问它们?apps.googleusercontent.com或de

我想在我的网页上显示一些地图图层,所以我决定试试这个谷歌服务。由于数据收集在服务器的数据库中,我选择使用一个服务帐户,如前所述,然后使用php脚本中生成的私钥

当创建表并插入一些测试值时,一切正常。我得到了表Id,我可以从脚本中使用它。问题是我不知道如何从web浏览器访问这些表。在我的API控制台中,使用情况统计数据显示得很好,但当使用我的帐户登录到Google Drive时,我在其中没有看到任何表格

如果可能的话,我应该在哪里访问它们?apps.googleusercontent.com或developer.gserviceaccount.com帐户在登录其他服务以通过web访问时是否扮演任何角色

我还得到了一个相关联的api键,但当试图查询一个表时,我得到了一个401错误

有什么提示吗?我现在觉得有点失落。谢谢。

您正在使用服务帐户,对吗? 因此,使用此帐户创建表时,此帐户将是表的所有者。其他人无权查看此表

当您使用个人帐户访问Fusion Tables web界面时,您将只看到使用个人帐户创建的表

如果您希望检查使用您的服务帐户创建的表,则必须将Google Drive API与您的服务帐户凭据一起使用,以授予您的个人帐户访问权限。 此外,如果您希望将表(或任何其他类型的文档)公开,则需要再次使用此GoogleDrive API。 有关此主题的更多信息,请参见此处:


<强> ToP:如果您想代表您的服务帐户实现某件事,您只需要一次(因此不需要在Web应用程序中实现它),我会认真建议您考虑使用。您可以在“设置”中设置服务帐户凭据,并代表服务帐户发出授权请求。非常有用的工具,无需编码。

谢谢您的帮助。这看起来有点复杂了。我想要实现的是非常简单的:用服务器php脚本中的数据提供一个融合表,然后向任何访问我的网页的用户显示一个显示这些数据的地图。这样一个简单的用例采取了所有这些步骤吗?如果可能的话,我希望避免任何过度的复杂化。您说过,您已经使用服务帐户从php填充了一个融合表。你已经经历了最糟糕的部分,不要在结束时放弃。您很可能使用了google php api客户端,对吗?如果是这样的话,您的脚本中已经有了一个Google_客户端$Client。使用此选项可获得驱动器API权限服务:$permissionsService=new Google_DriveService($client)->权限;一旦你拥有了它,创建一个新的权限,这将使你的表对任何像这样的人公开:$Permission=new Google_Permission()$权限->设置角色('reader')$权限->设置类型(“任何人”);然后将此权限添加到融合表:$permissionservice->insert($tableId,$permission);就这样,你完了。从现在起,您的表是可读的(但对每个人,而不仅仅是您)和公共的。现在你可以把它放在谷歌地图的“融合层”上了。非常感谢你的耐心。我不打算放弃,因为我需要完成这项工作:)但正如前面所说,我想知道是否有一个简单的方法是不可用的,只是可以肯定,因为我是谷歌API的新手。我并不是说这很复杂,而是希望在Fusionable客户端api中使用一种简单的方法来设置表的隐私,而不是仅仅依靠单独的api。你的帮助让我向前迈进,非常感谢。现在,我需要找出其他问题,但至少基本的工作。由于融合表集成到谷歌驱动器,它只是它的另一种文档类型。谷歌也可以将权限服务集成到Fusion Tables API中,但它将打破SaaS和REST概念的若干规则。简言之:你只需要接受它。。