Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 

Отправка POST-запроса на API REST

Используйте POST-запрос HTTP для отправки одного или нескольких запросов RPC на REST API. Для настройки устройства можно использовать POST-запрос.

Для одной rpc команды общий формат оконечных точек:

scheme://device-name:port/rpc/method[@attributes]/params

  • scheme: http или https

  • method: Имя любой rpc Junos OS. Имя method идентично элементу tag. Дополнительные сведения см. в Junos протоколе XML, обработке инструкций и тегов ответа в руководстве по разработчику протокола управления XML Junos xML и справочнике разработчика Junos XML API.

  • params: Необязательные значения параметров name[=value] ().

Для аутентификации запроса отправьте имя пользователя и пароль, закодированный базой 64, в задатке авторизации:

Чтобы указать данные в качестве строки запроса в URI для POST-запросов, отправьте данные запроса rpc на теле POST. В таких случаях можно указать Content-Type как или , как text/plain application/xml показано в этих эквивалентных вызовах cURL:

Для одиночных и нескольких команд RPC можно использовать заглавныедеры HTTP Accept для указания формата возврата, используя одно из следующих значений типа содержимого:

  • application/xml (по умолчанию)

  • приложение/json

  • текст/обычная

  • текст/html

Например, следующий вызов cURL определяет формат вывода JSON:

Можно также указать формат вывода с использованием дополнительного format атрибута:

Примечание.

По умолчанию для POST-запросов, содержащих аргументы в теле, по умолчанию задается application/xml. Если необходимо использовать любое другое содержимое, например строку запроса, можно указать тип содержимого ( текст/неявный). Укажите format атрибут в командах настройки.

При выполнении нескольких команд в одном запросе rpc общий формат конечной точки:

scheme://device-name:port/rpc

RPC должны быть предоставлены в качестве XML-данных в теле POST. Тип содержимого для ответа является многопартийным/смешанным, при этом граница и подтип связаны с выходными данными каждого выполнения RPC. Формат, указанный в заглавном сообщении "Accept", используется в качестве формата выходных данных для каждого из RPC при утере format атрибута. Если в RPC не указан задавитель Accept и в указанном RPC не указан ни один атрибут, формат вывода по умолчанию format — XML. Например, отправить один HTTP-запрос для выполнения RPC и get-software-information get-interface-information отправить POST-запрос /rpc с "Auth: Basic <base64hash>" . "Content-Type: application/xml" Тело POST будет содержать:

<get-software-information/><get-interface-information/>

Ниже находится вызов cURL с использованием этого тела POST:

Выходные данные запроса, содержащие XML в качестве стандартного, будут отображаться следующим образом:

Также можно указать формат выходных данных для каждого элемента в теле POST. Например, следующий запрос излучает JSON для RPC и обычный текст get-interface-information для get-software-information RPC:

При выполнении нескольких RPC в случае возникновения ошибки по умолчанию игнорируется ошибка и продолжается выполнение. Если необходимо выйти из URI при первой ошибке, stop-on-error укажите флаг в URI. Например, при столкновении с ошибкой устройство настраивается и завершается следующим запросом: