2

在anguler js中,如果我在單個函數中使用了兩次$ http,它會影響從Web服務獲取數據。

Like :- 
.factory('Chats', function($http) { 
    $http{} 
    $http{} 
}); 

Thanks 
+0

我不明白你的問題。請提供一個輸入代碼,http響應和預期結果的示例 – aorfevre

+0

您是否在白名單中添加了url?http://stackoverflow.com/questions/29437035/whitelist-not-working-ionic-with-crosswalk – lisztomania

+0

more over:是嗎?一個get或一個post/put被執行?對於一個簡單的獲取(讀)它應該產生可怕的dammages – benek

回答

1

使用兩個$ http調用獲取數據不是問題,它們不會互相干擾,因爲它們是異步調用的。

這太好了,因爲這意味着它們都會立即被調用,而不必等待另一個完成。

但是,您應該知道,因此您可以在獲得第一個呼叫的結果之前獲得第二個呼叫的結果。如果你在第一個$ http中有一個非常長的調用(大量的數據)並且很短的一個(少量的數據),這可能會發生。如果你想在繼續之前等待兩者完成,那麼你可以使用$ q.all等待兩個完成,然後再繼續。你可以在這裏閱讀更多關於:https://www.jonathanfielding.com/combining-promises-angular/

+0

謝謝@JimTheDev –