2011-12-08 169 views
0

我正在寫使用Ajax的腳本。該腳本將調用的API,然後使用這些數據再次調用API,然後根據一個最終請求API第三次。Ajax請求鏈接/嵌套?

目前Ajax請求的鏈接,所以如果響應狀態是200,它會執行其他Ajax請求,如果一個是200,將另做。所以基本上嵌套的請求。

他們是異步請求。這是做到這一點的正確方法嗎?我不能幫助,但認爲它有點混亂,錯誤。

+0

「因此,基本上嵌套的請求。」 - 呃不是真的,這些聽起來像在您的Ajax使用範圍內的同步請求(或鏈接使用您的術語)。 –

+0

我使用的異步請求,這樣腳本的其餘部分不被中斷,但不會發生第二次請求,直到第一次完成。與第三次相同。 –

回答

1

使用ajax請求,將它們與callbacks鏈接是正確的方法...確保第二個調用僅在第一個調用成功完成後才能初始化的最佳方法。

asyncCall1(function(){ 
    asyncCall2(function(){ 
     asyncCall3(); 
    }) 
}) 
1

在javascript方面,我會說這是一個正確的方法。

但是在API端而不是多個請求中,當以下請求僅基於先前請求檢索的數據時,您的api可以/應該能夠響應第一個請求的最終結果(或合併結果) 。