Показать сообщение отдельно
  #1 (permalink)  
Старый 28.12.2012, 00:12
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Вопрос по $.pipe()
Из мануала:
Цепочка ajax-запросов. Перед тем, как выполнить основной запрос (по адресу url_1), будет произведен предварительный запрос идентификатора текущего пользователя (по адресу url_2)
var request = $.ajax(url_1, {dataType: "json"}),
chained = request.pipe(function( data ){
  return $.ajax(url_2, {data: {user:data.userId} });
});
 
chained.done(function(data){
  // data будет содержать ответ сервера на второй запроса (по url_2)
});

Не пойму. Если мы пишем var request = $.ajax(url_1, {dataType: "json"}), это означает, что запрос сразу же уходит на сервер. Поэтому все, что мы пишем после уже никак не сможет повлиять на этот запрос. Так почему же тогда говориться, что основной запрос не будет выполнен, пока не выполнится второстепенный?
Ответить с цитированием