Versões comparadas

Chave

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

...

ERP 11 e superiores

Sintaxe

 

Informações
iconfalse
WSRESTFUL [ cServiceName]  [ Description ] WSRESTFUL <cServiceName> DESCRIPTION <cDescription> [SECURITY <cSecurity>] [FORMAT <cFormat>] [SSL ONLY]

Parâmetros

NomeTipoDescriçãoObrigatórioReferência
cServiceNameCaracterIndica o nome da classe REST que será declarada. O nome de uma classe REST, deve ser iniciada por um caractere alfabético e deve conter apenas os caracteres alfabéticos compreendidos entre A e Z, os caracteres numéricos compreendidos entre 0 e 9, podendo também ser utilizado o caracter "_" (underline). Um serviço não pode ter o nome de uma palavra reservada, da linguagem AdvPL, ou ter o nome igual a um tipo básico de informação.

O nome da classe REST é o mesmo utilizado na URI, desta forma, deve-se respeitar a estrutura de nomes permitidos na mesma.

X
 Description

cDescription Caracter
Indica
Informe a descrição
da classe apresentada na janela de índice
do serviço. Essa informação é
fornecida também, junto do WSDL gerado pelo TOTVS Application Server para o serviço especificado.X 
 
utilizada na listagem dos serviços REST disponíveis no TOTVS| Application Server e serve como documentação do serviço.X
cSecurityCaracterInforme o nome da rotina que tem relação com a API REST (exemplo MATA030 ou MATA410), esse nome será utilizado para validação dos privilégios, permitindo assim o acesso ou não a API.

cFormatCaracterInforme o formato de exportação do serviço. Esta informação é utilizada na listagem dos serviços REST.

SSL ONLY-Indica que a classe só permitirá o acesso via conexão segura do tipo SSL (Secure Socket Layer).


Observações

  • Dentro da estrutura de um classe (Server) de REST, deve-se declarar os métodos disponibilizados da classe, propriedades, parâmetros e retornos utilizados. Para isso, utilize os comandos WSMETHOD e WSDATA.
  • Para encerrar a declaração da classe, utilize o comando END WSRESTFUL
  • Para utilizar este comando, é necessário declarar a #INCLUDE RESTFUL.CH no código-fonte AdvPL

Exemplo

Bloco de código
firstline1
linenumberstrue
#INCLUDE "TOTVS.CH" #INCLUDE "RESTFUL.CH" WSRESTFUL Users DESCRIPTION "Classe Users" WSDATA cResponse AS STRING WSDATA Count AS INTEGER OPTIONAL WSDATA StartIndex AS INTEGER OPTIONAL WSMETHOD GET DESCRIPTION "GET" WSMETHOD POST DESCRIPTION "POST" WSMETHOD PUT DESCRIPTION "PUT" WSMETHOD DELETE DESCRIPTION "DELETE" END WSRESTFUL
  • .
  • No parâmetro nomeado como FORMAT, apenas para o modo sem o uso de SSL, também é aceita a constante CONSUMES, mas seu efeito é o mesmo de utilizar FORMAT.
  • Para o conteúdo do parâmetro FORMAT estão definidas as seguintes constantes:

    APPLICATION_ATOM_XML
    APPLICATION_ATOM_XML_TYPE
    APPLICATION_FORM_URLENCODED
    APPLICATION_FORM_URLENCODED_TYPE
    APPLICATION_JSON
    APPLICATION_JSON_TYPE
    APPLICATION_OCTET_STREAM
    APPLICATION_OCTET_STREAM_TYPE
    APPLICATION_SVG_XML
    APPLICATION_SVG_XML_TYPE
    APPLICATION_XHTML_XML
    APPLICATION_XHTML_XML_TYPE
    APPLICATION_XML
    APPLICATION_XML_TYPE
    MEDIA_TYPE_WILDCARD
    MULTIPART_FORM_DATA
    MULTIPART_FORM_DATA_TYPE
    TEXT_HTML
    TEXT_HTML_TYPE
    TEXT_PLAIN
    TEXT_PLAIN_TYPE
    TEXT_XML
    TEXT_XML_TYPE
    WILDCARD
    WILDCARD_TYPE
    APPLICATION_XJAVASCRIPT
    APPLICATION_JAVASCRIPT
    TEXT_JAVASCRIPT