摘要
从指定的 ArcGIS for Server 中删除地图服务。
讨论
此方法自 ArcGIS 10.1 for Server 和 ArcGIS 10.1 for Desktop 已弃用并会返回运行时错误。
ArcGIS 10.1 for Server 具有全新架构,这种架构可能要求您调整服务器的使用方式。有关详细信息,请参阅以下帮助主题:迁移至 ArcGIS for Server 时可能出现的情况。
您可以使用 ArcGIS 站点目录中的 ArcGIS for Server Administrator API 删除地图服务。ArcGIS for Server 站点目录的默认 URL 如下所示:
http://<服务器名称>:6080/arcgis/admin
下面演示了使用 Python 和 ArcGIS for Server Administrator API 删除地图服务:
import json
import urllib
import urllib2
def gentoken(url, username, password, expiration=60):
query_dict = {'username': username,
'password': password,
'expiration': str(expiration),
'client': 'requestip'}
query_string = urllib.urlencode(query_dict)
return json.loads(urllib.urlopen(url + "?f=json", query_string).read())['token']
def deleteservice(server, servicename, username, password, token=None, port=6080):
if token is None:
token_url = "http://{}:{}/arcgis/admin/generateToken".format(server, port)
token = gentoken(token_url, username, password)
delete_service_url = "http://{}:{}/arcgis/admin/services/{}/delete?token={}".format(server, port, servicename, token)
urllib2.urlopen(delete_service_url, ' ').read() # The ' ' forces POST
# if you need a token, execute this line:
deleteservice("<server>", "<service>.MapServer", "<admin username>", "<admin password>")
# if you already have a token, execute this line:
deleteservice("<server>", "<service>.MapServer", None, None, token='<token string>')
语法
DeleteMapService (connection_url_or_name, server, service_name, {folder_name}, {connection_username}, {connection_password}, {connection_domain})
参数 | 说明 | 数据类型 |
connection_url_or_name | A string that represents the URL of the ArcGIS for Server for which you want to delete a service. | String |
server | A string that represents the ArcGIS for Server host name. | String |
service_name | A string that represents the name of the service. This is the name people will see and use to identify the service. The name can only contain alphanumeric characters and underscores. No spaces or special characters are allowed. The name cannot be more than 120 characters in length. | String |
folder_name | A string that represents a folder name. | String |
connection_username | A string that represents a user name used to connect to ArcGIS for Server. This variable is only necessary when connecting to a UNIX/Linux ArcGIS for Server. (默认值为 None) | String |
connection_password | A string that represents a password used to connect to the ArcGIS for Server. This variable is only necessary when connecting to a UNIX/Linux ArcGIS for Server. (默认值为 None) | String |
connection_domain | A string that represents a domain name used to connect to the ArcGIS for Server. This variable is only necessary when connecting to a UNIX/Linux ArcGIS for Server. (默认值为 None) | String |