Pular para o conteúdo

Variáveis em linha nos campos

Qualquer campo de texto de um pedido aceita uma expressão Handlebars escrita em linha. É o mecanismo mais direto para parametrizar uma chamada: sem configuração prévia, a substituição acontece no momento do envio.

  • o URL (incluindo o esquema, o anfitrião, a porta e a cadeia de consulta);
  • os cabeçalhos, tanto na chave como no valor;
  • os parâmetros de consulta e os parâmetros de caminho;
  • o corpo: JSON em bruto, XML, formulário, x-www-form-urlencoded;
  • os campos próprios de cada protocolo: tópico MQTT, chave de encaminhamento AMQP, mensagem gRPC, consulta GraphQL e as suas variáveis, comando Redis, chave Kafka…

Um URL inteiramente parametrizado:

{{scheme}}://{{host}}:{{port}}/v{{apiVersion}}/clients/{{clientId}}

Um cabeçalho composto:

Authorization: Bearer {{accessToken}}
X-Request-Id: {{uuid}}

Um corpo JSON que mistura variáveis e helpers:

{
"reference": "CMD-{{timestamp}}",
"client": "{{clientId}}",
"libelle": "{{uppercase produit}}",
"montant": {{multiply prixUnitaire quantite}},
"creeLe": "{{now}}"
}

Um tópico MQTT e uma chave de encaminhamento AMQP:

capteurs/{{site}}/{{capteurId}}/mesures
commandes.{{pays}}.creees

Sob os campos em questão, o Restorm mostra o valor resolvido com o ambiente ativo. É o reflexo a adquirir antes de se perguntar por que motivo uma chamada parte para um URL errado: a resposta está quase sempre visível ali.

Um campo URL que contém {{baseUrl}}/pet/{{petId}}, com o seu valor resolvido pelo ambiente ativo apresentado logo abaixo

Ctrl+Space desencadeia a conclusão automática nos campos que a aceitam: propõe as variáveis do ambiente atual e os helpers Handlebars, com a sua assinatura e um exemplo.

  • Uma expressão não resolvida (variável inexistente) devolve uma cadeia vazia — não provoca um erro. Daí a importância da pré-visualização.
  • O modelo é compilado sem escape HTML: um & ou um < num valor passa intacto, o que é o comportamento esperado para JSON ou XML.
  • Os helpers sem argumento ({{uuid}}, {{now}}, {{$randomEmail}}…) produzem um valor diferente a cada envio. É intencional, e é prático para os identificadores de correlação.

Referência completa: Helpers Handlebars.