Árvore de páginas

Versões comparadas

Chave

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

...

  • asWarning (JsonObject com a tabela temporária RowErrors);
  • asWarning (JsonObject com o status e a tabela temporária RowErrors);
  • asWarning (JsonArray com indicador de existência de próximo registro e a tabela temporária RowErrors);
  • empty(com e sem status).

Métodos

Nome

Descrição

okCria um retorno positivo com o payload e com o código do status HTTP 200 (é possível informar um status).
asError

Cria um retorno de erro com uma lista erros da RowErrors e com o código do status HTTP 500 (é possível informar um status).

asWarning

Cria um retorno positivo com uma lista warnings da RowErrors e com o código do status HTTP 200 (é possível informar um status).

emptyCria um retorno vazio e com o código do status HTTP 200 (é possível informar um status).

Exemplos

Bloco de código
titleJsonAPIResponseBuilder:ok()
...

DEFINE OUTPUT PARAM jsonOutput AS JsonObject NO-UNDO.

DEFINE VARIABLE oJsonObject    AS JsonObject NO-UNDO.

ASSIGN oJsonObject = NEW JSONObject().
jsonOutput = JsonAPIResponseBuilder:ok(oJsonObject).

/* ou */
jsonOutput = JsonAPIResponseBuilder:ok(oJsonObject, 201). /* retorna status 201 */

/* ou */
jsonOutput = JsonAPIResponseBuilder:ok(oJsonObject, TRUE). /* existencia de próximo registro */

...

/*
No exemplo acima será retornado um Json na variável "jsonOutput" no seguinte formato, podendo ter o status alterado:
{
	"status":200,
	"payload":{conteudo_do_oJsonObject}
}
*/

...

Mapeamento da RowErrors (include method/dbotterr.i):

CampoJsonDescrição
ErrorNumbercodeCódigo da mensagem
ErrorDescriptionmessageDescrição da mensagem
ErrorSubTypetypeTipo de mensagem
ErrorHelpdetailedMessageHelp da mensagem
Informações
titleNota

A tag "details" somente aparecerá no JSON quando houver mais de uma mensagem do mesmo tipo, exemplo: duas mensagens de "error" ou duas mensagens de "warning".

...