我想要完成的是-编辑作为联邦服务器中的功能服务发布的安全功能表。通常,当您加载一个安全的特性服务时,它将提示用户凭据。
所以,我要做的是首先对它进行身份验证,然后将凭据传递给该功能服务(记住会话),并在该功能表上执行添加/编辑/更新等。
Oauth2的例子展示了如何通过ArcGIS.com进行身份验证,它没有提供切换登录到ArcGIS企业的选项。如果你有一个例子来做到这一点,那就太好了。我认为这是一个常见的场景,每个人都遇到过对一个特征层/表做一个基本的CRUD操作。但是,不知道从哪里开始没有样本。
同时,也请提出一些学习建议。谢谢!
我假设你是在Pro,桌面或Web应用程序生成器类型的应用程序之外这样做,并直接通过API插入。
Python示例:
def get_token ():
#-------------------------------------------------------------------------------
# Name: Function -
目的:
#-------------------------------------------------------------------------------data = checklist.b64decode(AGOL_Pass)
Pw = data.decode("ascii")Url = 'https://www.arcgis.com/sharing/rest/generateToken'
值= {'f': 'json',
“用户名”:AGOL_User,
“密码”:pw,
'referer': 'https://www.arcgis.com',
'expiration': '10'}Data = urllib.parse.urlencode(values).encode("utf-8")
req = urllib.request.Request(url)response =无
而响应为None:
试一试:
Response = urllib.request.urlopen(req,data=data)
除了:
通过The_page = response.read()
#垃圾收集和一些房屋建筑
Payload_json = the_page.decode('utf8')
Payload_json = json.loads(Payload_json)Edit_token = payload_json['token']
返回(edit_token)
如果你想通过一个web应用程序来做这件事,你可以采取获得一个长期令牌的方式。但是,在这种情况下,根据您的配置方式,会涉及到一些风险。您将附加?token={},{}是您将为服务插入的令牌。这将允许您使用Portal帐户作为该功能服务的身份验证。
哦! !您可能需要的门户令牌的URL如下:https://yourserver.com/webadaptorname/admin/login
我假设您将在该URL和门户web适配器名称中使用门户服务器。