Evite que la llamada ajax se dispare dos veces

Tengo una llamada ajax

$('#button1').on('click', function(e){
    $.ajax({
      url:  url,
      type: 'POST',
      async: true,
      dataType: 'json',
      enctype: 'multipart/form-data',
      cache: false,
      success: function(data){

      },
      error: function(){}
    });
    e.stopImmediatePropagation();
    return false;
});

Ahora aquí la respuesta se recibe después de 10 minutos. Entonces la llamada ajax se llama varias veces. ¿Por qué sucede esto / cómo podemos asegurarnos de que la llamada ajax se llame solo una vez?

Respuestas a la pregunta(3)

Su respuesta a la pregunta