Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagesass
themeMidnight
titleConfiguração REST sem os comentários
linenumberstrue
[General]
MAXSTRINGSIZE=10      
 
[HTTPV11]
Enable=1
Sockets=HTTPREST
 
[HTTPREST]
Port=8080              
IPsBind=
URIs=HTTPURI
Security=1             
 
[HTTPURI]              
URL=/rest              
PrepareIn=ALL          
Instances=2,5,1,1      
CORSEnable=1           
AllowOrigin=*          
 
[HTTPJOB]
MAIN=HTTP_START         
ENVIRONMENT=environment 
 
[ONSTART]
jobs=HTTPJOB            
RefreshRate=30          

Obs: O exemplo abaixo contém  valores obrigatórios referente ao REST com comentários.

Bloco de código
languagesass
themeRDark
titleConfiguração REST com comentários
linenumberstrue
[General]
MAXSTRINGSIZE=10      
	;//MAXSTRINGSIZE: Essa chave é obrigatória com o valor mínimo de 10.
 
[HTTPV11]
Enable=1
Sockets=HTTPREST
 
[HTTPREST]
Port=8080              
	;//Port: Porta que o REST irá utilizar para subir o serviço, pode ser alterada para qualquer outra porta.
IPsBind=
URIs=HTTPURI
Security=1             
	;//Security: O valor 1 é obrigatório.

InactiveTimeout=60
	;// Tempo em segundos que a conexão será mantida sem que o cliente efetue requisições.
MaxRequests=0
	;//Número máximo de requisições por conexão
SSLCheckClientCert=0
	;//Indica se fará ou não a validação do certificado de cliente, encerrando a conexão caso não valide.

 
[HTTPURI]              
	;//HTTPURI: Mesmo valor da chave URIs, definido na linha 13.
URL=/rest              
	;//URL: Path onde o rest irá subir, pode ser alterado.
PrepareIn=ALL          
	;//PrepareIn: Chave que indica qual environment será preparado para o rest. ALL significa que deve ser preparado para atender todas as empresas. Caso você queira utilizar o REST com empresa 1 filial 01, por exemplo, inserir na chave 1,01.
Instances=2,5,1,1      
	;//Instances: Chave obrigatória, mais informações sobre configuração em http://tdn.totvs.com/display/tec/Instances . A configuração desta chave impacta diretamente no total de licenças consumidas pelo REST.
CORSEnable=1           
	;//CORSEnable: Essa chave é obrigatória e com o valor 1, caso contrário, o REST não aceitara as requisições dos apps.
AllowOrigin=*          
	;//AllowOrigin: Essa chave limita os IP's que o REST do Protheus pode responder, deve conter o valor * (responder para qualquer ip) ou os ip's específicos onde a integração será realizada.
 
[HTTPJOB]
MAIN=HTTP_START         
	;//MAIN: Cria um JOB que inicializa o servidor HTTP na inicialização do serviço.
ENVIRONMENT=environment 
	;//ENVIRONMENT: Diz em qual environment(ambiente) o JOB será configurado.
 
[ONSTART]
jobs=HTTPJOB            
	;//Jobs: Indica que o HTTPJOB será iniciado quando o serviço for iniciado.
RefreshRate=30          
	;//RefreshRate: Indica qual a taxa de atualização para reiniciar o JOB em caso de falha.
Bloco de código
languagesass
themeMidnight
titleConfiguração REST sem os comentários
linenumberstrue
collapsetrue
[General]
MAXSTRINGSIZE=10      
 
[HTTPV11]
Enable=1
Sockets=HTTPREST
 
[HTTPREST]
Port=8080              
IPsBind=
URIs=HTTPURI
Security=1             
 
[HTTPURI]              
URL=/rest              
PrepareIn=ALL          
Instances=2,5,1,1      
CORSEnable=1           
AllowOrigin=*          
 
[HTTPJOB]
MAIN=HTTP_START         
ENVIRONMENT=environment 
 
[ONSTART]
jobs=HTTPJOB            
RefreshRate=30          

...

Informações

A partir da lib 20230403 em ambientes com binário a partir do 20.3.1.3 é possível a configuração das tags InactiveTimeout, MaxRequests, SSLCertificateCA e SSLCheckClientCert nos Sockets Rest.

Chave

Descrição

Valores

Padrão

SSLCheckClientCertIndica se fará ou não a validação do certificado de cliente, encerrando a conexão caso não valide.
  • 0 - não faz a validação
  • 1 - faz a validação
0
SSLCertificateCAIndica o caminho absoluto do certificado de CA do certificado apontado pela chave SSLCertificate.
Vazio
MaxRequests

Número máximo de requisições por conexão, se for zero não há limite de requisições. Caso seja maior que zeros a conexão será encerrada após responder a quantidade de requisições informada. 


0
InactiveTimeOutTempo em segundos que a conexão será mantida sem que o cliente efetue requisições. Se for zero não há limite de tempo para fechar a conexão.
0

Maiores detalhes: HTTPSERVER - Servers



Informações
titleConfiguração específica Meu Coletor de Dados

Exclusivamente para o aplicativo Meu Coletor de Dados, é necessário incluir a chave MODULE na seção HTTPURI:

Bloco de código
[HTTPURI]
Module=46

A configuração do REST do Meu Coletor de Dados não pode ser compartilhada com os demais aplicativos.


3.1 Configuração REST no Intera

Se você está na modalidade Intera de licenciamento, a configuração do REST terá uma pequena particularidade.

Estamos falando da chave "stateless" na sessão [URIHTML], que define a maneira em que as licenças serão consumidas: Na inicialização da thread ou por demanda.

Para habilitar o comportamento de consumo de licença por demanda, o conteúdo da chave deve ser "1". Caso a chave não exista ou contenha o valor zero, o consumo de licença na inicialização da thread será mantido.

Informações
titleExemplo de configuração para Intera

[URIHTML]
URL=/rest/app
PrepareIn=All
Instances=2,2
CORSEnable=1
AllowOrigin=*
Stateless=1

Saiba mais detalhes acessando este link.


Após configurado, você pode iniciar o executável do appserver do REST em modo console e verificar se ele subiu corretamente através da mensagem no console:

...

          A chave AllowOrigin indica de quais ip's o REST pode responder. Quando o valor é * (asterisco), indica que o Protheus pode responder para qualquer ip.

          Para utilização dos Apps, é possível limitar o acesso apenas para os ranges de ip's do Mingle listados Mingle listados abaixo: 

  • 13834.21966.881.0/2467189
  • 34.12566.7827.128/25255187
  • 34.94121.48152.0/2077189
  • 34.89122.3288.0/2030181
  • 146.41148.16050.0/19219
  • 3104.14155.95181.150563
  • 34.1428.95132.342093
  • 35.14225.95171.255
  • 34.69.186.150


Obs: Essa configuração também deve ser feita no firewall da rede do cliente.

5 - Validações:

Existem diferentes maneiras para verificar se o REST esta com a configuração correta.

...