DeleteMapService (arcpy.mapping)

Краткая информация

Прежние версииПрежние версии:

Этот метод является устаревшим, начиная с ArcGIS 10.1 for Server и ArcGIS 10.1 for Desktop, и возвращает ошибку исполнения. Обратитесь к документации ArcGIS по использованию нового ArcGIS for Server интерфейса Administrator API.

Удаляет картографический сервис из созданного ArcGIS for Server.

Обсуждение

Этот метод является устаревшим, начиная с ArcGIS 10.1 for Server и ArcGIS 10.1 for Desktop, и возвращает ошибку исполнения.

ArcGIS 10.1 for Server имеет новую архитектуру, поэтому вам может потребоваться изменить способ вашей работы с сервером. Обратитесь к разделу справки для получения дополнительной информации: Чего ожидать при переходе на ArcGIS for Server.

Можно удалить картографические сервисы с использованием ArcGIS for Server интерфейса Administrator API, доступного через ArcGIS Site Directory. По умолчанию используется следующий URL ArcGIS for Server Site Directory:

http://<имя сервера>:6080/arcgis/admin

ПримечаниеПримечание:

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>')

Синтаксис

DeleteMapService (connection_url_or_name, server, service_name, {folder_name}, {connection_username}, {connection_password}, {connection_domain})
ПараметрОбъяснениеТип данных
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
5/10/2014