jQuery: Как переделать Ajax Post, если это занимает слишком много времени? - PullRequest
0 голосов
/ 28 мая 2009

Иногда кажется, что запрос заморожен. Как я могу отменить его и позвонить снова, если это займет много времени?

Иногда задержка составляет более 10 минут, потому что сообщение Ajax проверяет API Twitter, а иногда API Twitter, вы знаете! :)

Ответы [ 3 ]

1 голос
/ 28 мая 2009

Используйте опцию тайм-аута:

http://docs.jquery.com/Ajax/jQuery.ajax#toptions

1 голос
/ 28 мая 2009

Вы можете использовать опцию тайм-аута. Ознакомьтесь с документацией .

Вы можете установить тайм-аут на разумное значение. Если происходит тайм-аут, будет вызвана ошибка обратного вызова, а второй аргумент будет иметь значение «тайм-аут» в качестве значения.

0 голосов
/ 28 мая 2009

вы всегда можете поместить этот вызов в тайм-аут или в очередь и выполнять его каждые x минут ... когда он задан, установите для логической переменной значение true, а когда наступит это время, он не будет вызывать функцию ... когда вам нужно вызвать это снова, установить его снова в false ...

var getResults = true;


settimeout( function() {
    if( getResults ) {
       // call your ajax method
       ...
       onSuccess: 
          ...
          getResults = false;
    }
}, 1000 );

как то так ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...