Classe responsável por tratar e manipular os dados recebidos via objeto JsonObject na API Progress. Através dela é possível a recuperação das seguintes informações:
- URL da requisição
- Método da requisição
- Headers enviados na requisição
- Parâmetros do tipo Path
- Parâmetros do tipo Query
- Linha inicial de busca de registros no banco (calculado com base na página atual e tamanho de página) (caso enviado na requisição).
- Tamanho de página (caso enviado na requisição)
- Campos a serem retornados (caso enviado na requisição)
- Campos a serem expandidos (caso enviado na requisição)
- Ordem dos registros (caso enviado na requisição)
- Corpo da requisição.
Bloco de código |
---|
|
DEFINE VARIABLE oRequestParser AS JsonAPIRequestParser NO-UNDO.
oRequestParser = NEW JsonAPIRequestParser(pJsonInput).
ASSIGN cURI = oRequestParser:getURI()
cMethod = oRequestParser:getMethod()
oHeaders = oRequestParser:getHeaders()
aPathParams = oRequestParser:getPathParams()
oQueryParams = oRequestParser:getQueryParams()
iStartRow = oRequestParser:getStartRow()
iPageSize = oRequestParser:getPageSize()
iPage = oRequestParser:getPage()
cFields = oRequestParser:getFieldsChar()
cExpandables = oRequestParser:getExpandChar()
oOrder = oRequestParser:getOrder()
lcPayload = oRequestParser:getPayloadLongChar(). |
Construtor
Parâmetro | Descrição |
---|
JsonObject | Objeto JSON recebido como parâmetro pela procedure da requisição (contendo o conteúdo completo da requisição) |
Métodos
Nome | Descrição |
---|
getURI | Recupera a URL da requisição. |
getMethod | Recupera o Método da Requisição (GET, POST, DELETE, etc). |
getPathParams | Retorna um objeto JsonArray com os parâmetros PATH da requisição. Exemplo: Bloco de código |
---|
| ["path1","path2","path3"] |
|
getQueryParams | Retorna um objeto JsonObject com os parâmetros QUERY da requisição. Exemplo: Bloco de código |
---|
| {"codUser":["cod01","cod02","cod03"]} |
|
getPayload | Retorna um objeto JsonObject com o corpo da requsição. |
getPayloadLongChar | Retorna um LONGCHAR com o corpo da requsição. |
getPageSize | Recupera o tamanho da página, caso tenha sido passado como parâmetro. Exemplo: Informações |
---|
| /prg/tstun/V1/totvs-fwk-rest-tstun-prg/getAttributes?page=5&pageSize=20&fields=fields1&expand=expandValue1&filter=filterValue1 |
|
getPage | Recupera o número da página, caso tenha sido passado como parâmetro. Exemplo: Informações |
---|
| /prg/tstun/V1/totvs-fwk-rest-tstun-prg/getAttributes?page=5&pageSize=20&fields=fields1&expand=expandValue1&filter=filterValue1 |
|
getStartRow | Recupera a posição do registro inicial a ser pesquisado de acordo com o número e tamanho da página (caso tenha sido passado como parâmetro). Exemplo: Informações |
---|
| /prg/tstun/V1/totvs-fwk-rest-tstun-prg/getAttributes?page=5&pageSize=20&fields=fields1&expand=expandValue1&filter=filterValue1 Retorna: (5 - 1) * 20 |
|
) |
getFields | Retorna um objeto JsonArray com os campos a serem pesquisados, caso tenha sido passado como parâmetro. Exemplo: Informações |
---|
| /prg/tstun/V1/totvs-fwk-rest-tstun-prg/getAttributes?page=5&pageSize=20&fields=fields1&expand=expandValue1&filter=filterValue1 |
Bloco de código |
---|
| ["fields1"] |
|
getFieldsChar | Retorna um LONGCHAR com os campos a serem pesquisados separados por vírgula. |
getOrder | Retorna um objeto JsonArray com os campos a serem ordenados, caso tenha sido passado como parâmetro. Exemplo: Informações |
---|
| /prg/tstun/V1/totvs-fwk-rest-tstun-prg/getAttributes?page=5&pageSize=20&fields=fields1&order=fields1&expand=expandValue1&filter=filterValue1 |
Bloco de código |
---|
| ["fields1"] |
|
getOrderChar | Retorna um LONGCHAR com os campos a serem ordenados separados por vírgula. |
getExpand | Retorna um objeto JsonArray com os campos a serem expandidos, caso tenha sido passado como parâmetro. Exemplo: Informações |
---|
| /prg/tstun/V1/totvs-fwk-rest-tstun-prg/getAttributes?page=5&pageSize=20&fields=fields1&order=fields1&expand=expandValue1&filter=filterValue1 |
Bloco de código |
---|
| ["expandValue1"] |
|
getExpandChar | Retorna um LONGCHAR com os campos a serem expandidos separados por vírgula. |