2013-03-19 36 views
0

我正在創建一個web應用程序,並且我有4個webservice。如何等待來自webservice的響應並調用Jquery中的另一個Webservice

  1. 發出呼叫
  2. 獲取振鈴狀態
  3. 回答狀態
  4. 掛斷

我想,當我從jQuery的執行第一web服務應該等待響應,然後檢查另一個Webservice並異步獲取狀態。

目前我正在使用。

function InfoByDate(){ 
    var divToBeWorkedOn = "#AjaxPlaceHolder"; 
    var webMethod = "http://MyWebService/Web.asmx/GetInfoByDates"; 
    var parameters = "{}"; 

    $.ajax({ 
     type: "POST", 
     url: webMethod, 
     data: parameters, 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function(msg) {  
      $(divToBeWorkedOn).html(msg.d); 
     }, 
     error: function(e){ 
      $(divToBeWorkedOn).html("Unavailable");    
     } 
    }); 
} 

你能推薦一些東西嗎?

+0

你能不能把狀態Web服務調用在發出呼叫服務的成功呢? – 2013-03-19 04:51:19

+0

是的,我可以。但我怎麼能繼續檢查服務是否返回我適當的迴應 – Moiz 2013-03-19 05:18:52

+0

我想你的意思是你想要輪詢web服務。爲此你可以使用setInterval方法 – 2013-03-19 05:39:53

回答

0

爲「我怎樣才能繼續術語檢查「正在輪詢。如果你想輪詢web服務,你可以使用如下的setInterval

setInterval(function() { 
    //call your webservice here 
}, 5000); 
0

調用web服務和其成功處理程序內調用其他web的服務是完全同步call..calling第二web的服務而不管第一服務成功的是一個異步調用。

$.ajax({ 
    type: "POST", 
    url: webMethod, 
    data: parameters, 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    async: false, 
    success: function(msg) {  
     $(divToBeWorkedOn).html(msg.d); 
    //**call to second service** 
    }, 
    error: function(e){ 
     $(divToBeWorkedOn).html("Unavailable");  
     //call you second function here 
    } 
}); 

同步呼叫建立Async:false和異步調用設置Async:true jQuery的AJAX裏面所有的服務調用