Logix como servidor REST
Tags: logix, totvstec, rest, https
Published: 2022-02-16 01:41:25

Olá pessoas, tudo bem?

Hoje vamos configurar o Logix para ser um servidor REST, desta forma podemos fazer com que aplicativos externos busquem informações no Logix.

---

## Criando um appserver REST

A primeira coisa a ser feita é criar um novo appserver que será utilizado exclusivamente para responder as requisições que serão realizadas.

Para facilitar a identificação e uma futura manutenção, nomeie o appserver de forma clara para que qualquer pessoa que for acessar o servidor saiba qual a finalidade daquele appserver. Nossa sugestão é criar um appserver com o nome appserver_web ou appserver_rest

Para criar o appserver sugerimos a leitura do seguinte [artigo](https://dev.to/marlonpinheiro/criando-um-novo-appserver-no-logix-1gep).

---

## Configurando o appserver REST

Feita a criação do appserver, agora vamos realizar as configurações necessárias.

Segue abaixo todas as configurações que precisam ser realizadas no arquivo totvsappserver.ini

```
[ONSTART]
REFRESHRATE=30
JOBS=HTTPJOB

[HTTPJOB]
MAIN=HTTP_START
ENVIRONMENT=DBOracle-34

[HTTPV11]
ENABLE=1
SOCKETS=HTTPREST
TIMEOUT=600

[HTTPREST]
PORT=9070
URIS=RESTMAIN
SECURITY=1
SSL2=0
SSL3=1
TLS1=3
TSL1_0=1
TSL1_1=1
TSL1_2=1

# *** Certificado 01
#CERTIFICATE=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\cert.pem
#KEY=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\key.pem

# *** Certificado 02
# CERTIFICATE=D:\TOTVS\LOGIX\bin\4371_appserver_https\certificates\JVD60103166.cer
# KEY=D:\TOTVS\LOGIX\bin\4371_appserver_https\certificates\JVD60103166.key

# *** Certificado 03
CERTIFICATE=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\totvs_certificate.crt
KEY=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\totvs_certificate_key.pem

[RESTMAIN]
URL=/rest
INSTANCES=3,10
ONSTART=LOGIXRESTSTART
ONCONNECT=LOGIXRESTCONNECT
ONEXIT=LOGIXRESTEXIT

# *** REST FIM

[WEBSERVICES]
userid=admlog

[HTTP]
enable=1
port=80
path=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\web

[HTTPS]
enable=1
port=443
path=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\web

[SSL]
TYPE=TCPIP
PORT=26011
SecureConnection=1

[SSLCONFIGURE]
SSL2    = 0
SSL3    = 1
TLS1_0  = 1
TLS1_1  = 1
TLS1_2  = 1
HSM=0
BUGS=1
STATE=1
VERBOSE=1
tryprotocols=1

# *** Certificado 01
#CERTIFICATESERVER=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\cert.pem
#KEYSERVER=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\key.pem

# *** Certificado 02
# CERTIFICATESERVER=D:\TOTVS\LOGIX\bin\4371_appserver_https\certificates\JVD60103166.cer
# KEYSERVER=D:\TOTVS\LOGIX\bin\4371_appserver_https\certificates\JVD60103166.key

# *** Certificado 03
CERTIFICATESERVER=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\totvs_certificate.crt
KEYSERVER=D:\TOTVS\LOGIX\bin\4372_appserver_rest_https\certificates\totvs_certificate_key.pem
```

Note que estamos realizando o apontamento para alguns certificados. 
Neste [artigo](https://dev.to/marlonpinheiro/totvs-certificate-knl) explicamos como fazer a criação destes certificados.

---

## Inicializando o appserver REST

Com tudo configurado você já pode fazer a inicialização do appserver.