Utilitários auxiliares em $util - AWS AppSync GraphQL

Utilitários auxiliares em $util

nota

Agora, oferecemos suporte principalmente ao runtime do APPSYNC_JS e sua documentação. Considere usar o runtime do APPSYNC_JS e seus guias disponíveis aqui.

A variável $util contém métodos utilitários gerais para ajudar você a trabalhar com dados.​ A menos que especificado o contrário, todos os utilitários usam o conjunto de caracteres UTF-8.

Utilitários de análise JSON

$util.parseJson(String) : Object

Usa um JSON "transformado em string" e retorna uma representação de objeto do resultado.

$util.toJson(Object) : String

Recebe um objeto e retorna uma representação JSON "transformado em string" desse objeto.

Utilitários de codificação

$util.urlEncode(String) : String

Retorna a string de entrada como uma string codificada application/x-www-form-urlencoded.

$util.urlDecode(String) : String

Decodifica uma string codificada application/x-www-form-urlencoded de volta ao seu formato não codificado.

$util.base64Encode( byte[] ) : String

Codifica a entrada em uma string codificada em base64.

$util.base64Decode(String) : byte[]

Decodifica os dados de uma string codificada em base64.

Utilitários de geração de ID

$util.autoId() : String

Retorna um UUID de 128 bits gerado aleatoriamente.

$util.autoUlid() : String

Retorna um identificador lexicograficamente classificável universalmente exclusivo (ULID) de 128 bits gerado aleatoriamente.

$util.autoKsuid() : String

Retorna um identificador exclusivo classificável por K (KSUID) de 128 bits gerado aleatoriamente, codificado em base62, como uma string com comprimento de 27.​

Utilitários de erro

$util.error(String)

Lança um erro personalizado. Use em modelos de mapeamento de solicitação ou resposta para detectar um erro na solicitação ou no resultado da invocação.

$util.error(String, String)

Lança um erro personalizado. Use em modelos de mapeamento de solicitação ou resposta para detectar um erro na solicitação ou no resultado da invocação. Também é possível especificar um errorType.

$util.error(String, String, Object)

Lança um erro personalizado. Use em modelos de mapeamento de solicitação ou resposta para detectar um erro na solicitação ou no resultado da invocação. Você também pode especificar um errorType e um campo data. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL.

nota

data será filtrado com base no conjunto de seleção da consulta.

$util.error(String, String, Object, Object)

Lança um erro personalizado. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, é possível especificar os campos errorType, data e errorInfo. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL.

nota

data será filtrado com base no conjunto de seleção da consulta. O valor errorInfo será adicionado ao bloco error correspondente em errors na resposta do GraphQL.

errorInfo NÃO será filtrado com base no conjunto de seleção da consulta.

$util.appendError(String)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Diferente de $util.error(String), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador.

$util.appendError(String, String)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, um errorType pode ser especificado. Diferente de $util.error(String, String), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador.

$util.appendError(String, String, Object)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, um errorType e um campo data podem ser especificados. Diferente de $util.error(String, String, Object), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL.

nota

data será filtrado com base no conjunto de seleção da consulta.

$util.appendError(String, String, Object, Object)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, é possível especificar os campos errorType, data e errorInfo. Diferente de $util.error(String, String, Object, Object), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL.

nota

data será filtrado com base no conjunto de seleção da consulta. O valor errorInfo será adicionado ao bloco error correspondente em errors na resposta do GraphQL.

errorInfo NÃO será filtrado com base no conjunto de seleção da consulta.

Utilitários de validação de condições

$util.validate(Boolean, String) : void

Se a condição for falsa, lance uma CustomTemplateException com a mensagem especificada.

$util.validate(Boolean, String, String) : void

Se a condição for falsa, lance uma CustomTemplateException com a mensagem especificada e tipo de erro.

$util.validate(Boolean, String, String, Object) : void

Se a condição for falsa, lance uma CustomTemplateException com a mensagem especificada e tipo de erro, além dos dados a serem retornados na resposta.

Utilitários de comportamento nulo

$util.isNull(Object) : Boolean

Retorna verdadeiro se o objeto fornecido for nulo.

$util.isNullOrEmpty(String) : Boolean

Retorna verdadeiro, se os dados fornecidos forem nulos ou uma string vazia. Caso contrário, retornará falso.

$util.isNullOrBlank(String) : Boolean

Retorna verdadeiro, se os dados fornecidos forem nulos ou uma string em branco. Caso contrário, retornará falso.

$util.defaultIfNull(Object, Object) : Object

Retorna o primeiro Objeto que não seja nulo. Caso contrário, retorna o segundo objeto como um "Objeto padrão".

$util.defaultIfNullOrEmpty(String, String) : String

Retorna a primeira String se não for nula ou vazia. Caso contrário, retorna a segunda String como uma "String padrão".

$util.defaultIfNullOrBlank(String, String) : String

Retorna a primeira String se não for nula ou em branco. Caso contrário, retorna a segunda String como uma "String padrão".

Utilitários de correspondência de padrões

$util.typeOf(Object) : String

Retorna uma String que descreve o tipo do Objeto. As identificações de tipo compatíveis são: "Nulo", "Número", "String", "Mapa", "Lista", "Booliano". Se um tipo não puder ser identificado, o tipo de retorno é "Objeto".

$util.matches(String, String) : Boolean

Retorna verdadeiro se o padrão especificado no primeiro argumento corresponde aos dados fornecidos no segundo argumento. O padrão deve ser uma expressão regular, como $util.matches("a*b", "aaaaab"). A funcionalidade se baseia em Padrão, que você pode consultar para obter documentação adicional.

$util.authType() : String

Retorna uma String que descreve o tipo de autenticação múltipla que está sendo usado por uma solicitação, retornando "Autorização do IAM", "Autorização de grupo de usuários", "Autorização do Open ID Connect" ou "Autorização de chave de API".

Utilitários de validação de objetos

$util.isString(Object) : Boolean

Retorna verdadeiro se o Objeto for uma String.

$util.isNumber(Object) : Boolean

Retorna verdadeiro se o Objeto for um Número.

$util.isBoolean(Object) : Boolean

Retorna verdadeiro se o Objeto for um Booliano.

$util.isList(Object) : Boolean

Retorna verdadeiro se o Objeto for uma Lista.

$util.isMap(Object) : Boolean

Retorna verdadeiro se o Objeto for um Mapa.

Utilitários de registro em log do CloudWatch

$util.log.info(Object) : Void

Registra a representação de string do objeto fornecido no fluxo de logs solicitado quando o registro em log do CloudWatch nos níveis de solicitação e campo é habilitado com o nível de log ALL, INFO ou DEBUG em uma API.

$util.log.info(String, Object...) : Void

Registra um log da representação de string do objeto fornecido no fluxo de logs solicitado quando o log do CloudWatch em nível de solicitação e em nível de campo é habilitado com nível de log ALL em uma API. Esse utilitário substituirá todas as variáveis indicadas por "{}" no primeiro formato de entrada String pela representação String dos objetos fornecidos em ordem.

$util.log.debug(Object) : Void

Registra a representação de string do objeto fornecido no fluxo de logs solicitado quando o registro em log do CloudWatch nos níveis de solicitação e campo é habilitado com o nível de log ALL ou DEBUG em uma API.

$util.log.debug(String, Object...) : Void

Registra um log da representação de string do objeto fornecido no fluxo de logs solicitado quando o log do CloudWatch em nível de campo é habilitado com nível de log DEBUG ou nível de log ALL em uma API. Esse utilitário substituirá todas as variáveis indicadas por "{}" no primeiro formato de entrada String pela representação String dos objetos fornecidos em ordem.

$util.log.error(Object) : Void

Registra a representação de string do objeto fornecido no fluxo de logs solicitado quando o registro em log do CloudWatch no nível de campo é habilitado com qualquer nível de log (ALL, INFO, DEBUG etc.) em uma API.

$util.log.error(String, Object...) : Void

Registra um log da representação de string do objeto fornecido no fluxo de logs solicitado quando o log do CloudWatch em nível de campo é habilitado com nível de log ERROR ou nível de log ALL em uma API. Esse utilitário substituirá todas as variáveis indicadas por "{}" no primeiro formato de entrada String pela representação String dos objetos fornecidos em ordem.

Utilitários de comportamento do valor de retorno

$util.qr() e $util.quiet()

Executa uma instrução de VTL enquanto suprime o valor retornado. Isso é útil para executar métodos sem usar espaços reservados temporários, como adicionar itens a um mapa. Por exemplo:

#set ($myMap = {}) #set($discard = $myMap.put("id", "first value"))

Se torna:

#set ($myMap = {}) $util.qr($myMap.put("id", "first value"))
$util.escapeJavaScript(String) : String

Retorna a string de entrada como uma string recuada JavaScript.

$util.urlEncode(String) : String

Retorna a string de entrada como uma string codificada application/x-www-form-urlencoded.

$util.urlDecode(String) : String

Decodifica uma string codificada application/x-www-form-urlencoded de volta ao seu formato não codificado.

$util.base64Encode( byte[] ) : String

Codifica a entrada em uma string codificada em base64.

$util.base64Decode(String) : byte[]

Decodifica os dados de uma string codificada em base64.

$util.parseJson(String) : Object

Usa um JSON "transformado em string" e retorna uma representação de objeto do resultado.

$util.toJson(Object) : String

Recebe um objeto e retorna uma representação JSON "transformado em string" desse objeto.

$util.autoId() : String

Retorna um UUID de 128 bits gerado aleatoriamente.

$util.autoUlid() : String

Retorna um identificador lexicograficamente classificável universalmente exclusivo (ULID) de 128 bits gerado aleatoriamente.

$util.autoKsuid() : String

Retorna um identificador exclusivo classificável por K (KSUID) de 128 bits gerado aleatoriamente, codificado em base62, como uma string com comprimento de 27.​

$util.unauthorized()

Lança Unauthorized para o campo a ser resolvido. Use em modelos de mapeamento de solicitação ou resposta para determinar se é preciso ou não permitir que o chamador resolva o campo.

$util.error(String)

Lança um erro personalizado. Use em modelos de mapeamento de solicitação ou resposta para detectar um erro na solicitação ou no resultado da invocação.

$util.error(String, String)

Lança um erro personalizado. Use em modelos de mapeamento de solicitação ou resposta para detectar um erro na solicitação ou no resultado da invocação. Também é possível especificar um errorType.

$util.error(String, String, Object)

Lança um erro personalizado. Use em modelos de mapeamento de solicitação ou resposta para detectar um erro na solicitação ou no resultado da invocação. Você também pode especificar um errorType e um campo data. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL. Observação: data será filtrado com base no conjunto de seleção da consulta.

$util.error(String, String, Object, Object)

Lança um erro personalizado. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, um campo errorType, um campo data e um campo errorInfo podem ser especificados. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL. Observação: data será filtrado com base no conjunto de seleção da consulta. O valor errorInfo será adicionado ao bloco error correspondente em errors na resposta do GraphQL. Observação: errorInfo NÃO será filtrado com base no conjunto de seleção da consulta.

$util.appendError(String)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Diferente de $util.error(String), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador.

$util.appendError(String, String)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, um errorType pode ser especificado. Diferente de $util.error(String, String), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador.

$util.appendError(String, String, Object)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, um errorType e um campo data podem ser especificados. Diferente de $util.error(String, String, Object), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL. Observação: data será filtrado com base no conjunto de seleção da consulta.

$util.appendError(String, String, Object, Object)

Anexa um erro personalizado no final. Isso pode ser usado em modelos de mapeamento da solicitação ou resposta se o modelo detectar um erro com a solicitação ou com o resultado da invocação. Além disso, um campo errorType, um campo data e um campo errorInfo podem ser especificados. Diferente de $util.error(String, String, Object, Object), a avaliação do modelo não será interrompida para que os dados possam ser retornados ao chamador. O valor data será adicionado ao bloco error correspondente em errors na resposta do GraphQL. Observação: data será filtrado com base no conjunto de seleção da consulta. O valor errorInfo será adicionado ao bloco error correspondente em errors na resposta do GraphQL. Observação: errorInfo NÃO será filtrado com base no conjunto de seleção da consulta.

$util.validate(Boolean, String) : void

Se a condição for falsa, lance uma CustomTemplateException com a mensagem especificada.

$util.validate(Boolean, String, String) : void

Se a condição for falsa, lance uma CustomTemplateException com a mensagem especificada e tipo de erro.

$util.validate(Boolean, String, String, Object) : void

Se a condição for falsa, lance uma CustomTemplateException com a mensagem especificada e tipo de erro, além dos dados a serem retornados na resposta.

$util.isNull(Object) : Boolean

Retorna verdadeiro se o objeto fornecido for nulo.

$util.isNullOrEmpty(String) : Boolean

Retorna verdadeiro, se os dados fornecidos forem nulos ou uma string vazia. Caso contrário, retornará falso.

$util.isNullOrBlank(String) : Boolean

Retorna verdadeiro, se os dados fornecidos forem nulos ou uma string em branco. Caso contrário, retornará falso.

$util.defaultIfNull(Object, Object) : Object

Retorna o primeiro Objeto que não seja nulo. Caso contrário, retorna o segundo objeto como um "Objeto padrão".

$util.defaultIfNullOrEmpty(String, String) : String

Retorna a primeira String se não for nula ou vazia. Caso contrário, retorna a segunda String como uma "String padrão".

$util.defaultIfNullOrBlank(String, String) : String

Retorna a primeira String se não for nula ou em branco. Caso contrário, retorna a segunda String como uma "String padrão".

$util.isString(Object) : Boolean

Retorna verdadeiro se o Objeto for uma String.

$util.isNumber(Object) : Boolean

Retorna verdadeiro se o Objeto for um Número.

$util.isBoolean(Object) : Boolean

Retorna verdadeiro se o Objeto for um Booliano.

$util.isList(Object) : Boolean

Retorna verdadeiro se o Objeto for uma Lista.

$util.isMap(Object) : Boolean

Retorna verdadeiro se o Objeto for um Mapa.

$util.typeOf(Object) : String

Retorna uma String que descreve o tipo do Objeto. As identificações de tipo compatíveis são: "Nulo", "Número", "String", "Mapa", "Lista", "Booliano". Se um tipo não puder ser identificado, o tipo de retorno é "Objeto".

$util.matches(String, String) : Boolean

Retorna verdadeiro se o padrão especificado no primeiro argumento corresponde aos dados fornecidos no segundo argumento. O padrão deve ser uma expressão regular, como $util.matches("a*b", "aaaaab"). A funcionalidade se baseia em Padrão, que você pode consultar para obter documentação adicional.

$util.authType() : String

Retorna uma String que descreve o tipo de autenticação múltipla que está sendo usado por uma solicitação, retornando "Autorização do IAM", "Autorização de grupo de usuários", "Autorização do Open ID Connect" ou "Autorização de chave de API".

$util.log.info(Object) : Void

Registra um log da representação de string do objeto fornecido no fluxo de logs solicitado quando o log do CloudWatch em nível de solicitação e em nível de campo é habilitado com nível de log ALL em uma API.

$util.log.info(String, Object...) : Void

Registra um log da representação de string do objeto fornecido no fluxo de logs solicitado quando o log do CloudWatch em nível de solicitação e em nível de campo é habilitado com nível de log ALL em uma API. Esse utilitário substituirá todas as variáveis indicadas por "{}" no primeiro formato de entrada String pela representação String dos objetos fornecidos em ordem.

$util.log.error(Object) : Void

Registra um log da representação de string do objeto fornecido no fluxo de logs solicitado quando o log do CloudWatch em nível de campo é habilitado com nível de log ERROR ou nível de log ALL em uma API.

$util.log.error(String, Object...) : Void

Registra um log da representação de string do objeto fornecido no fluxo de logs solicitado quando o log do CloudWatch em nível de campo é habilitado com nível de log ERROR ou nível de log ALL em uma API. Esse utilitário substituirá todas as variáveis indicadas por "{}" no primeiro formato de entrada String pela representação String dos objetos fornecidos em ordem.

$util.escapeJavaScript(String) : String

Retorna a string de entrada como uma string recuada JavaScript.

Autorização do resolvedor

$util.unauthorized()

Lança Unauthorized para o campo a ser resolvido. Use em modelos de mapeamento de solicitação ou resposta para determinar se é preciso ou não permitir que o chamador resolva o campo.