Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 7 Próxima »

Configurando o serviço REST via APWebWizard  

O APWebWizard é responsável por fazer as atualizações no seu arquivo "appserver.ini" de acordo com sua necessidade para a criação dos mais diversos serviços. Para iniciarmos, conforme imagem abaixo, realize a chamada via smartclient para o seu ambiente desejado:


1) Inicialmente, caso ainda não possua um serviço HTTP, precisaremos cria-lo, como no exemplo da imagem abaixo:

Informando uma pasta do servidor com o caminho para os serviços Web, a porta do HTTP e o ambiente a ser utilizado.
É importante selecionar também "Protocolo habilitado" para permitir ao servidor responder as requisições que chegarem!


2) Nessa fase vamos habilitar o serviço REST no server Protheus:

Escolha a opção REST do menu, em seguida o item HTTPV11, e clique no botão "editar configurações".
Conforme imagem abaixo, devemos configurar o socket com a porta do REST.

É importante selecionar o item "habilitado" para permitir ao servidor responder as requisições que chegarem!
Também é importante, marcar o item "Autenticação", para que os acessos sejam validados, visto que por padrão todos os serviços REST da TOTVS são públicos.

Na parte inferior da imagem, devemos informar as configurações para a montagem da URL que estará disponível com a relação dos serviços a serem consumidos.
Sendo possível configurar uma URL diferente para cada empresa, nesse momento devemos sempre utilizar a palavra "/rest" seguido com o ID da sua empresa. Por exemplo, na montagem desse exemplo, a minha empresa é "T1", ou seja, meus dicionários são "SX2T10", "SX3T10", etc.

A utilização obrigatória da palavra "rest" na URL do REST é uma necessidade do app MeuRH, pois é utilizado internamente quando utilizado via aplicativo baixado da apple store ou google play instalado nos celulares.  

Caso utilize o nome da URL com o complemento da empresa para apoiar na identificação, como sugerimos, deverá ficar semelhante ao da imagem seguinte, em nosso caso, como nossa empresa de teste é T1, o endereço da URL seria "/restT1":


Seguindo, na próxima imagem, podemos configurar as informações sobre o certificado SSL, lembrando que para esse caso também deverá ser configurado um server HTTPs para que possa responder das solicitações REST em SSL. Continuando nessa segunda imagem, devemos informar outros parâmetros:

    • "Habilitar Cors" deve estar marcado, assim como "Allow Origin" preenchido com '*' (asterisco) para permitir que o server possa responder requisições de outros servidores.
    • "Endpoints publicos" deverá estar preenchido com as informações 'fwjwt/refresh_token,auth/login,auth/logout,auth/isLogged' , pois são os endpoints iniciais responsáveis pela autenticação e geração do token de acesso aos serviços.

Após clicar no botão de confirmação, deverá ser possível visualizar a terceira imagem final da sequencia desse item 2 de configuração!


Dica interessante

É possível utilizar um servidor Protheus (AppServer) apenas com os serviços REST, sem a necessidade de configurar os outros jobs e webservices do padrão soap referente ao portal tradicional Gestão do Capital Humano. O aplicativo MeuRH utiliza somente serviços REST em sua utilização, sendo assim, permite a flexibilidade da criação de servidores separados, podendo, caso necessário, reinicializar um server sem prejudicar o outro!



Após a confirmação teremos criado a serviço REST para o server Protheus:



3) Nessa fase vamos criar um processo comum que criará um job para inicializar o serviço do REST criado anteriormente:

Como na imagem abaixo, devemos informar:

    • O nome para o JOB.
    • O ambiente relacionado para o serviço REST.
    • Informar o nome da função que inicializa o serviço, obrigatoriamente: "HTTP_START"
    • Marcar a opção "Habilitar job no start do servidor Protheus"

Abaixo a imagem do Job criado, após a confirmação no botão finalizar!


Como resultado dessa configuração, encontraremos as seguintes tags no arquivo "appserver.ini":

[HTTPV11]
Enable=1
Sockets=HTTPREST

[HTTPREST]
Port=8103
URIs=HTTPENV
SECURITY=1

[HTTPENV]
URL=/restT1
PrepareIn=T1
Instances=2,5,1,1
ENVIRONMENT=12.1.17
CORSEnable=1
AllowOrigin=*
Public=fwjwt/refresh_token,auth/login,auth/logout,auth/isLogged

[HTTPJOB]
MAIN=HTTP_START
ENVIRONMENT=12.1.17

[ONSTART]
jobs=HTTPJOB



4) Após essas configurações do serviço REST, podemos iniciar o server, e identificar na imagem abaixo a inicialização dos serviços:


5) Para validar se o seu serviço REST está sendo carregado adequadamente, verifique se é possível realizar o carregamento dos serviços via browser:

Observe que utilizamos a porta 8103 do REST criada anteriormente, assim o nome da URL definida "/restT1".




Demais passos da configuração:





  • Sem rótulos