Árvore de páginas

Requisições HTTP possuem um cabeçalho [Header], um conjunto de chave:valor que servem para determinar comportamentos esperados da requisição através de chaves e valores definidos em protocolos internacionais.

Porém pode-se também enviar conjuntos de chave:valor que se desejar.


Para resgatar o valor veja o exemplo:


#include "tlpp-core"
#include "tlpp-rest"

@Get("sample/function/header")
user function sampleHeader()

 local cReturn := ""
 local jHeader := Nil

 jHeader := oRest:getHeaderRequest()
 if ( jHeader <> Nil )
   cReturn := "Parâmetros capturados: [" + jHeader:ToJSon() + "]"
 endif

 oRest:SetResponse( cReturn )
return


Para obter todos os dados do Header oRest:getHeaderRequest().

Esse método já nos retorna em formato JSON, portanto, para acessar o dado de um determinado parâmetro, basta seguir como abaixo:


jHeader := oRest:getHeaderRequest()
cCode := jHeader[ 'code' ]

Atenção:

Os objetos JSON retornados por métodos de oRest, como por exemplo oRest:getQueryRequest(), são referências ao objeto existente no REST e não uma cópia.

Existem alguns motivos para ser uma referência, são eles:

  • Melhorar performance do serviço;
  • Economia de memória;
  • Evitar que seja necessário limpar o objeto na saída da implementação do serviço REST.

Portanto, é imprescindível que não se manipule diretamente o Objeto, pois isso irá refletir nas próximas requisições, causando problemas difíceis de serem detectados.

Métodos:

oRest:getPathParamsRequest()
oRest:getQueryRequest()
oRest:getHeaderRequest()
oRest:getThreadPoolTlppData()
oRest:getServerTlppData()
oRest:getThreadPoolUserData()
oRest:getThreadPoolServerUserData()
oRest:getHeaderResponse()

  • Sem rótulos