我可以使用 ArcGIS REST-API "applyEdits" 作为经过身份验证的用户更新要素层吗?

Can I use ArcGIS REST-API "applyEdits" to update Feature-Layer as an authenticated user?

我正在使用 nodeJS 通过 REST API 编辑我的要素层。我的意图是:

  1. 使用 Firebase Cloud-Functions 更新我的图层
  2. 公开分享我的图层
  3. 但要让未经授权的用户无法编辑我的图层
  4. 我想使用我的 API-密钥进行身份验证。

我的问题: 如果我将特征定义编辑为 "capabilities" : "Create, Update, Delete",如前所述 here,那么任何未经授权的用户都可以编辑我的图层,而如果我不,我得到:

[ 'This operation is not supported.', 'Unable to add the features.', 'This operation is not supported.' ]

身份验证已取消 in the documentation

我的代码:

require("cross-fetch/polyfill");
require("isomorphic-form-data");
const featureLayer = require('@esri/arcgis-rest-feature-layer');
const auth = require('@esri/arcgis-rest-auth');

const apiKey = new auth.ApiKey({key: 'some key...'});
featureLayer.applyEdits({
    url: "https://services3.arcgis.com/someID/arcgis/rest/services/someName/FeatureServer/0",
    adds: [{
      geometry: { x: 120, y: 45 },
      attributes: { indexCity: "alive" }
    }],
    authentication: apiKey
  })
    .then(response => {
      console.log(response)
    })
    .catch(err => console.log(err.response.error.details));

我 运行 我的代码在终端中使用 node example.js

如何将 appleEdits 定义为只为我作为经过身份验证的用户?

一种选择是对私有要素图层(可编辑)进行编辑,然后拥有该要素图层的 public(不可编辑)视图。