Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Entendendo a REST API

A REST API é uma interface de Transferência de Estado Representacional (REST) que permite que você se conecte com segurança aos dispositivos do sistema operacional Junos (Junos OS) da Juniper Networks, execute chamadas de procedimento remoto (rpc comandos), use uma GUI REST API Explorer permitindo que você experimente convenientemente qualquer uma das APIs REST e use uma variedade de opções de formatação e exibição, incluindo a Notação de objetos JavaScript (JSON).

A API REST pode ser configurada em dispositivos Junos OS usando comandos disponíveis no nível de [edit system services rest] hierarquia. Uma vez configurada, a REST API fica disponível como serviço rest , uma interface baseada em REST que permite enviar comandos rpc ao dispositivo a partir de um local remoto e oferece suporte a solicitações GET e POST. Com a REST API você pode:

  • Use solicitações get para enviar rpc comandos.

  • Use solicitações post para enviar informações por comandos rpc .

  • Recuperar informações de configuração em XML, ASCII (texto simples) ou JSON.

  • Recuperar dados operacionais em XML, ASCII ou JSON.

No nível de [edit system services rest] hierarquia, você pode configurar e proteger o serviço REST API em um dispositivo Junos OS; configure endereços IP, números de porta, certificados de servidor, parâmetros de controle e opções de rastreamento; e habilite uma ferramenta rest API explorer que permite que você experimente as APIs REST usando uma GUI conveniente.

As seguintes opções de display CLI estão disponíveis:

  • Uma display json opção é adicionada ao | (tubo) comando. Por exemplo, o comando show interfaces | display json CLI exibe as interfaces em notação JSON.

  • Uma format="json" opção é adicionada aos comandos de servidor NETCONF para devolver informações operacionais na notação do JSON.

Nota:

O tamanho de carga de solicitação de entrada da REST API não pode exceder 1174KB.
Solução alternativa: reduza as solicitações de REST API de entrada em um tamanho menor.

A API REST oferece suporte à autenticação básica de HTTP, e todas as solicitações exigem um nome de usuário e senha codificados base64 incluídos no cabeçalho de autorização. Tanto o suporte a HTTP quanto o HTTPS estão disponíveis:

  • Você pode usar o HTTP para trocar conteúdo usando texto claro se não precisar de uma conexão segura.

  • Recomendamos que você use HTTPS para trocar conteúdo criptografado usando uma das suítes cifradas disponíveis. Você pode configurar a REST API para exigir autenticação de servidor sem autenticação do cliente ou configurar a autenticação mútua.

Assim que a API REST estiver configurada no dispositivo, novos endpoints REST estarão disponíveis para executar comandos únicos rpc por meio de solicitações GET ou POST, ou executar vários rpc comandos por meio de uma única solicitação POST. Consulte enviar uma solicitação GET à REST API e enviar uma solicitação POST à REST API para obter mais informações.

O Junos OS oferece suporte à emissão de dados de estado operacional em formato JSON compacto. Para emitir os dados JSON em formato compacto, configure a json compact declaração no nível de [edit system export-format state-data] hierarquia. Caso contrário, o dispositivo emite os dados JSON em formato não compacto por padrão.

A REST API também fornece uma GUI chamada REST API Explorer, que permite que você aprenda a usar a API REST com facilidade e rapidez. Ele é desativado por padrão e pode ser habilitado especificando set system services rest enable-explorer. Para saber mais sobre o REST API Explorer, veja Exemplo: Usando o REST API Explorer.

Tabela de histórico de mudanças

O suporte de recursos é determinado pela plataforma e versão que você está usando. Use o Feature Explorer para determinar se um recurso é suportado em sua plataforma.

Soltar
Descrição
24.4R1 e 24.4R1-EVO
A partir do Junos OS Release 24.4R1 e Junos OS Evolved Release 24.4R1, preterimos a compact declaração no [edit system export-format state-data json] nível hierárquica.