Chave | Tipo | Obrigatório |
---|---|---|
Port | integer | X |
Hostname | string | X |
ContentTypes | string | |
Locations | string/array | X |
SslCertificate | string | |
SslCertificateKey | string | |
TlppData | string/JSON | |
UserData | string/JSON |
Chaves da sessão
Port
Define a porta em que o servidor atenderá às requisições após ativado.
Hostname
Define o nome virtual para o servidor ativado.
ContentTypes
Define o nome da sessão que será responsável pela definição dos content-types suportados pelo serviço.
Locations
Define o nome das sessões(locations) deste servidor. O(s) nome(s) definido(s) nesta chave deverão utilizado(s) na chave LOCATIONS
.
Caso seja utilizado o arquivo appserver.ini o formato do valor desta chave deve ser string. Caso seja utilizado o JSON, seu valor deve ser do tipo array.
SslCertificate
Informar o path com o nome do arquivo do certificado digital, para utilização do REST com o protocolo HTTPS/SSL.
SslCertificateKey
Informar o path com o nome do arquivo com a chave do certificado digital, para utilização do REST com o protocolo HTTPS/SSL.
TlppData
Esta chave possibilita a configuração simultânea de múltiplos recursos.
O valor informado em tlppData deve ter conteúdo final um JSON válido, e dizemos valor final pois diretamente na chave você irá colocar um conteúdo de tipo string, que pode ser já o JSON desejado ou o nome de arquivo(*) que em seu conteúdo seja o JSON.
Caso seja informado o arquivo, pode-se fazer de duas maneiras:
Nome arquivo (irá buscar o arquivo em rootPath)
Caminho absoluto + Nome arquivo
Embora no exemplo de configuração dessa documentação essa chave tenha sido usada somente na sessão do Servidor, ela pode ser usada na sessão de definição das Thread Pool e Slaves.
Atenção -> Esse JSON é de uso exclusivo de recursos nativos do REST, portanto para utilizá-lo é preciso seguir à risca a documentação de cada funcionalidade.
UserData
Esta chave possibilita a configuração simultânea de múltiplos recursos, porém diferente do tlppCore essa é de uso exclusivo de cada usuário, portanto a utilize para customizar as configurações em seus recursos específicos.
O valor informado em userData deve ter conteúdo final um JSON válido, e dizemos valor final pois diretamente na chave você irá colocar um conteúdo de tipo string, que pode ser já o JSON desejado ou o nome de arquivo(*) que em seu conteúdo seja o JSON.
Caso seja informado o arquivo, pode-se fazer de duas maneiras:
Nome arquivo (irá buscar o arquivo em rootPath)
Caminho absoluto + Nome arquivo
Embora no exemplo de configuração dessa documentação essa chave tenha sido usada somente na sessão do Servidor, ela pode ser usada na sessão de definição das Thread Pool e Slaves.
Exemplos de configuração
Arquivo appserver.ini
[INIT_HTTP_REST]
Port=9080
Hostname=TLPP_REST_SERVER
ContentTypes=ContentTypes
Locations=HTTP_ROOT_01
TlppData=c:\config\tlppData.JSON
UserData=c:\config\userData.JSON
[INIT_HTTPS_REST]
Port=9081
Hostname=TLPP_SSL_REST_SERVER
ContentTypes=ContentTypes
Locations=HTTPS_ROOT_01
SslCertificate=totvs_certificate.crt
SslCertificateKey=totvs_certificate_key.pem
TlppData=c:\config\tlppData.JSON
UserData=c:\config\userData.JSON
JSON
jConfig['INIT_HTTP_REST'] := JsonObject():New()
jConfig['INIT_HTTP_REST']['Port'] := "9080"
jConfig['INIT_HTTP_REST']['HostName'] := "TLPP_REST_SERVER"
jConfig['INIT_HTTP_REST']['ContentTypes'] := "ContentTypes"
jConfig['INIT_HTTP_REST']['Locations'] := {"HTTP_ROOT_01"}
jConfig['INIT_HTTP_REST']['TlppData'] := "c:\config\tlppData.JSON"
jConfig['INIT_HTTP_REST']['UserData'] := "c:\config\userData.JSON"
jConfig['INIT_HTTPS_REST'] := JsonObject():New()
jConfig['INIT_HTTPS_REST']['Port'] := "9081"
jConfig['INIT_HTTPS_REST']['HostName'] := "TLPP_SSL_REST_SERVER"
jConfig['INIT_HTTPS_REST']['Charset'] := "iso-8859-1"
jConfig['INIT_HTTPS_REST']['ContentTypes'] := "ContentTypes"
jConfig['INIT_HTTPS_REST']['Locations'] := {"HTTPS_ROOT_01"}
jConfig['INIT_HTTPS_REST']['SslCertificate'] := "C:\tlppCore\bin\totvs_certificate.crt"
jConfig['INIT_HTTPS_REST']['SslCertificateKey'] := "C:\tlppCore\bin\totvs_certificate_key.pem"
jConfig['INIT_HTTPS_REST']['TlppData'] := "c:\config\tlppData.JSON"
jConfig['INIT_HTTPS_REST']['UserData'] := "c:\config\userData.JSON"