Хитрые AJAX запросы - PullRequest
       0

Хитрые AJAX запросы

0 голосов
/ 29 июня 2011

У меня есть клиент (написанный на JS-jQuery), отправляющий 4 запроса на сервер (написанный на ASP.NET-C #).
Первые 3 запроса работают нормально; но последний пустой при получении на стороне сервера.

  1. Когда я использую firebug для просмотра запроса, отправленного клиентом, он выглядит нормально, но сервер все еще получает пустую строку QueryString;
  2. Когда я выполняю отладку «шаг за шагом» с помощью firebug, сервер получает правильный запрос.

Я думал, что это междоменная проблема, но в этом случае все 4 запроса не должны работать !!
У вас когда-нибудь была подобная проблема? Как я могу решить эту проблему?
Спасибо за ваш ответ.

1 Ответ

0 голосов
/ 30 июня 2011

Настройка async: false имеет другие последствия.

Если вы установите для async значение false, браузер будет делать ставки заблокированными до тех пор, пока ответ не вернется к клиенту с сервера, это повлияет на производительность клиента и взаимодействие с пользователем. Если вы сможете поделиться фрагментом кода, который вызывает проблему, мы можем помочь вам решить ее. Установка async в false может быть неправильным решением.

Можете ли вы поделиться некоторыми подробностями относительно следующих пунктов? В каком порядке делаются запросы? Все запросы независимы или некоторые запросы зависят от значения ответа других запросов?

Шансы на 4-й запрос ajax (тот, который не выполняется) в зависимости от другого запроса (1 из первых 3) очень велик, потому что вы говорите, если вы установите async в false, запрос работает нормально .

В этом случае я бы предложил что-то вроде

$.ajax({
    url: 'request whose result need to be used in the 4th request',
    data:{....}
    ....
}).success(function(result){
    $.ajax({
        url : '4ht request',
        data:{
            xyx : result.abc,
            ......
        }
    });
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...