DeleteMapService (arcpy.mapping)
Резюме
![Прежние версии Прежние версии](rsrc/legacy.png)
Этот метод является устаревшим в ArcGIS 10.1 и возвращает ошибку времени выполнения. Обратитесь к документации ArcGIS по использованию нового ArcGIS for Server интерфейса Administrator API.
Обсуждение
Этот метод является устаревшим в ArcGIS 10.1 и возвращает ошибку времени выполнения.
ArcGIS for Server 10.1 имеет новую архитектуру, поэтому вам может потребоваться изменить способ вашей работы с сервером. См. следующие разделы справки для получения подробной информации: Что нового в ArcGIS 10.1 for Server, Чего ожидать при переходе к ArcGIS 10.1 for Server и Переход к ArcGIS 10.1 for Server.
Можно удалить картографические сервисы с использованием ArcGIS for Server интерфейса Administrator API, доступного через ArcGIS Site Directory. URL по умолчанию ArcGIS for Server Site Directory:
http://<имя сервера>:6080/arcgis/admin
![Примечание Примечание](rsrc/note.png)
URL Site Directory может быть другим, если вы настроили ArcGIS for Server Web Adaptor для работы с вашим сайтом. Например, включать номер порта (6080) может быть необязательно. Просмотрите конфигурацию Web Adaptor, чтобы получить корректный URL.
Пример использования 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>')
Синтаксис
Параметр | Объяснение | Тип данных |
connection_url_or_name |
Строка, содержащая URL ArcGIS for Server, для которого вы хотите удалить сервис. | String |
server |
Строка, содержащая имя хоста ArcGIS for Server. | String |
service_name |
Строка, представляющая имя сервиса. Это имя будут видеть пользователи и идентифицировать по нему сервис. Имя может содержать только буквы, цифры и подчеркивания. В имени нельзя использовать пробелы и специальные символы. Длина имени не должна превышать 120 символов. | String |
folder_name |
Строка, представляющая имя папки. | String |
connection_username |
Строка, содержащая имя пользователя, использующееся для подключения к ArcGIS for Server. Переменная является необходимой только для подключения к UNIX/Linux ArcGIS for Server. (Значение по умолчанию — None) | String |
connection_password |
Строка, содержащая пароль, использующийся для подключения к ArcGIS for Server. Переменная является необходимой только для подключения к UNIX/Linux ArcGIS for Server. (Значение по умолчанию — None) | String |
connection_domain |
Строка, содержащая доменное имя, использующееся для подключения к ArcGIS for Server. Переменная является необходимой только для подключения к UNIX/Linux ArcGIS for Server. (Значение по умолчанию — None) | String |