Como mostrar no log do ConOut o conteudo do oRest? Mostrar no log o conteúdo do getContent

Olá, bom dia.

Eu estou criando uma API para o Protheus e gostaria de saber como eu faço pra poder debugar no console as respostas, como o getQueryRequest, getContent, pra eu poder mostrar no console o que está sendo passado pelo usuário que está usando a API.

Eu fiz assim o meu @get:

Method get() as Logical Class SolicitacaoArmazemController

    // Setar Empresa e Filial no começo do App (Necessário)
    rpcSetEnv(cEmpAnt, cFilAnt)

    ConOut("SolicitacaoArmazemController:get - Iniciando")

    Local cResponseJson := '[{"Mensagem":"Hello World!"}]'

    // Pega os Parâmetros da Query e printa no Console.
    Local jParam as Json
    jParam := oRest:getQueryRequest() // Retornar o QueryParam
    ConOut("SolicitacaoArmazemController:get - Parametros da Query: " + jParam:toJSON())

    /* 
    NOTA sobre o Local jBody:

    Atribui o JSON enviado no BODY para um JSON Local usado pra printar no Log.
    O JSON enviado de exemplo foi:

    {
        "parametro": "teste"
    }

    */

    Local jBody := JsonObject():new()
    jBody:fromJson( oRest:GetBodyRequest() )
    if ( jBody <> Nil)
        cParametroNoJson := jBody:GetJsonText("parametro")
        if ( cParametroNoJson == "null" )
            cParametroNoJson := Nil
        Else
            ConOut("SolicitacaoArmazemController:get - Parametro no JSON: " + cParametroNoJson:toJSON())
        EndIf
    EndIf

    ConOut("SolicitacaoArmazemController:get - Configurando os Headers e a Response")
    oRest:setKeyHeaderResponse('Content-Type', 'application/json; charset=utf-8')    
    oRest:setResponse(cResponseJson)

    // Resetar a Empresa/Filial e liberar licenças utilizadas.
    rpcClearEnv()

Return .T.

Ele compilou com sucesso mas ele para antes da linha que eu tento printar o cParametroNoJson. Ele não passa pra frente.

Por favor, alguém pode me ajudar? Quero saber como mostrar no log as coisas que o cliente manda.

compartilhar
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do TOTVS DevForum!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags api rest tlpp advpl ou faça a sua própria pergunta.