Após efetuar as , veremos a partir daqui como utilizar as funcionalidades da linguagem TL++ para escrever aplicações REST.
Como não poderia ser diferente vamos começar pelo básico, então nada melhor do que escrever nosso "Hello World".
Podemos escrever o programa de duas maneiras:
Utilizando uma função.
Utilizando uma classe.
Utilizando função
@Get("/test/helloWorld")
User Function helloWorld()
Local cReturn := "Meu primeiro REST em TL++ "
oRest:setResponse(cReturn)
Return nil
class helloWorld
public data cReturn
public method new()
@Get("/test/helloWorld")
public method sayHello()
endClass
method new() class helloWorld
::cReturn := "Meu primeiro REST em TL++ "
return self
method sayHello() class helloWorld
oRest:setResponse(::cReturn)
return .T.
Explicando os componentes
Tomando como base os exemplos vistos acima, vamos explicar os componentes utilizados na construção do serviço REST TL++:
Includes
As includes tlpp-core
e tlpp-rest
são as únicas bibliotecas necessárias para o funcionamento básico que qualquer função\classe REST.
As mesmas já se encontram inclusas no tlpp.rpo bastando apenas declará-las.
@Get
@Get("/test/helloWorld")
A utilização de annotations tornou possível a simplificação na escrita de funções\classes REST. Com elas a aplicação faz o vínculo entre: verbo(delete,get,path,post,put) , a URN e a função/método responsável.
oRest:setResponse("mensagem retorno")
oRest:setResponse(::cReturn)
Este método é o responsável por enviar a mensagem de retorno no corpo da requisição para o client(requisitante). Neste exemplo está sendo retornado uma mensagem simples, mas é possivel efetuar o retorno de todos os formatos nas permitidos para respostas de requisições HTTP em API´s do tipo REST.