#------------------------------------------------------------------------------#
FUNCTION LREST_teste()
#------------------------------------------------------------------------------#
DEFINE l_rest_reference VARCHAR(10)
DEFINE l_status SMALLINT
DEFINE l_message CHAR(200)
# Cria o componente para requisições REST.
LET l_rest_reference = _ADVPL_create_component(NULL,"LREST")
# Define o endereço base das requisições.
CALL _ADVPL_set_property(l_rest_reference,"HOST","http://jsonplaceholder.typicode.com")
# Força a mensagem de erro.
LET l_status = _ADVPL_get_property(l_rest_reference,"GET","/notfound")
IF l_status THEN
LET l_message = "GET (ERRO):"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"RESULT")
CALL log0030_mensagem(l_message,"info")
ELSE
LET l_message = "GET (ERRO):"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"ERROR_MESSAGE")
CALL log0030_mensagem(l_message,"stop")
END IF
# Método GET.
LET l_status = _ADVPL_get_property(l_rest_reference,"GET","/posts")
IF l_status THEN
LET l_message = "GET:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"RESULT")
CALL log0030_mensagem(l_message,"info")
ELSE
LET l_message = "GET:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"ERROR_MESSAGE")
CALL log0030_mensagem(l_message,"stop")
END IF
# Método POST.
LET l_status = _ADVPL_get_property(l_rest_reference,"POST","/posts")
IF l_status THEN
LET l_message = "POST:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"RESULT")
CALL log0030_mensagem(l_message,"info")
ELSE
LET l_message = "POST:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"ERROR_MESSAGE")
CALL log0030_mensagem(l_message,"stop")
END IF
# Método PUT.
LET l_status = _ADVPL_get_property(l_rest_reference,"PUT","/posts/1")
IF l_status THEN
LET l_message = "PUT:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"RESULT")
CALL log0030_mensagem(l_message,"info")
ELSE
LET l_message = "PUT:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"ERROR_MESSAGE")
CALL log0030_mensagem(l_message,"stop")
END IF
# Método DELETE.
LET l_status = _ADVPL_get_property(l_rest_reference,"DELETE","/posts/1")
IF l_status THEN
LET l_message = "DELETE:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"RESULT")
CALL log0030_mensagem(l_message,"info")
ELSE
LET l_message = "DELETE:"
LET l_message = l_message CLIPPED, _ADVPL_get_property(l_rest_reference,"ERROR_MESSAGE")
CALL log0030_mensagem(l_message,"stop")
END IF
# Ao finalizar o uso, libera o componente da memória.
CALL _ADVPL_destroy_component(l_rest_reference)
END FUNCTION |