如何使用 JavaScript 动态更新地图引擎数据表

How do I dynamically update a Maps Engine data table with JavaScript?

本文关键字:新地图 引擎 数据表 更新 动态 何使用 JavaScript      更新时间:2023-09-26

我有一个地图引擎地图,其中一个图层链接到包含单个位置的数据表。 我想通过 Google 协作平台中的 JavaScript 更新数据表。mapsengine.tables.features.batchPatch似乎可以做我想做的事,同一命令的batchInsert版本的帮助页面似乎可以修改它以做我想做的事。 但是,我很难让它正常工作。 我相信问题是由于我不知道这个表的主键是什么或在哪里可以找到它(有关更多解释,请参阅此处)。

这里有谁能告诉我我是否朝着正确的方向前进,以及我如何能够找到这个主键(它有时似乎也被称为gx_id)? 提前感谢您提供的任何帮助。

编辑:当我去这里获取桌子上的信息时,我得到以下响应:

{
 "tables": [
  {
   "id": {My Table ID},
   "etag": "'"6030101253664097613'"",
   "projectId": {My Project ID},
   "name": "Current Location",
   "description": "",
   "tags": [
   ],
   "writersCanEditPermissions": false,
   "sourceEncoding": "UTF-8",
   "processingStatus": "complete",
   "bbox": [
    -180,
    -90,
    180,
    90
   ],
   "creationTime": "2014-11-11T21:33:43.982Z",
   "lastModifiedTime": "2014-11-12T20:55:20.613Z"
  }
 ]
}

如您所见,没有列出gx_id。 有没有办法添加它,或者我需要重新创建表才能从头开始添加它? 如果我需要重新创建表,我需要做什么来确保gx_id在那里,因为上次创建表时并没有立即发现缺少任何内容。

是的,这应该可以正常工作。 您只需获取表的副本并检查属性即可找到您的gx_id。 下面是文档中的示例:

请求:

https://www.googleapis.com/mapsengine/v1/tables/12421761926155747447-06672618218968397709/features?maxResults=500&version=published&key=(YOUR_KEY_HERE)

响应:

{
 "type": "FeatureCollection",
 "features": [
  {
   "type": "Feature",
   "geometry": {
    "type": "Point",
    "coordinates": [
     149.23531999999997,
     -35.352484
    ]
   },
   "properties": {
    ...
    "gx_id": "1" <-- HERE
   }
  },