Anonim

Por padrão, a solicitação $ .ajax no jQuery é definida como assíncrona. O nome da variável é assíncrono e o valor está definido como true. Isso também me deixou um pouco confuso quando aprendi sobre isso, então vamos falar sobre isso.

Assíncrono vs. Síncrono

A configuração padrão no jQuery. Na minha experiência, assíncrono quase sempre deve fazer o truque. Também existem duas situações em particular que nem permitem uma chamada síncrona.

  • Solicitações entre domínios. Se estou fazendo uma solicitação ajax de techjunkie.com para um arquivo em whereever.com (um domínio completamente diferente), isso seria uma solicitação entre domínios.
  • jsonp - Se você deseja recuperar dados entre domínios JSON, JSONP é o que procura.

Quando usar o Synchronous

Você deve estar ciente de que a configuração de assíncrono como falso congela seu navegador. Trava completamente. Não apenas sua página, mas todas as páginas que o usuário possa ter aberto. Por exemplo, se o servidor diminuir a velocidade da solicitação, você desativará efetivamente o navegador até que o servidor tenha a chance de atualizar e repassar os dados necessários.

Em vez de arriscar com uma chamada síncrona, basta especificar uma função de retorno de chamada com sucesso ou erro. Você chega ao mesmo ponto de extremidade sem arruinar a experiência de navegação do usuário. Em resumo, não use uma chamada síncrona. É ruim para o seu aplicativo e UX.

Diferença entre síncrono e assíncrono no ajax