Histórico da Página
Dica |
---|
Liberar na 1.5. Revisão Ok. |
Índice
Índice | ||||||||
---|---|---|---|---|---|---|---|---|
|
Objetivo
O objetivo desse guia é apresentar as características das chamadas de métodos síncrona e assíncrona.
Chamada de métodos síncrona vs. assíncrona
Sempre que se efetua uma integração via por chamada restREST/ajax Ajax é possível configurá-la para que a o widget aguarde , ou não , o término do processamento no servidor. Salvo quando existe a real necessidade de se esperar pelo retorno da chamada, é recomendado que sempre se faça a integração de forma assíncrona. Abaixo estão são apresentados dois exemplos de chamada remota (- uma para ajax Ajax e outra para rest)REST:
Ajax
Bloco de código | ||
---|---|---|
| ||
chamadaRemotaAjax : function() { $.ajax({ async: true, type: "GET", url: "url-do-servico-a-ser-consumido", success : function(data) { // código omitido }, error: function (msg){ // código omitido } }); } |
...
Elemento | Descrição |
---|---|
async: | Determina que a chamada seja feita de forma assíncrona (true) ou síncrona (false). |
success: | Código a ser executado quando a função retorna com sucesso. |
error: | Código que tratará eventuais erros no processamento remoto. |
REST
Bloco de código | ||
---|---|---|
| ||
chamadaRemotaRest : function() { WCMSpaceAPI.PageService.UPDATEPREFERENCES( { async: true, success: function (data) { // código omitido }, fail: function (xhr, message, errorData) { // código omitido } }, this.instanceId, preferences ); } |
...
Elemento | Descrição |
---|---|
async: | Determina que a chamada seja feita de forma assíncrona (true) ou síncrona (false). |
success: | Código a ser executado quando a função retorna com sucesso. |
fail: | Código que tratará eventuais erros no processamento remoto. |
Componente visual para chamadas assíncronas
Muitas vezes a execução remota de um código demora muito tempo, deixando o usuário com dúvidas sobre o sucesso ou falha do comando enviado ao servidor. Pensando nisso, a plataforma Fluig fluig disponibilizou uma forma para que haja um elemento que visualmente indique que algo está sendo processado. A documentação complete completa a respeito de sua utilização pode ser encontrada aqui.