假設我們有一個 Web service 是 Demo.Service1.SayHello, 如果我們想要在發出要求之後能夠取消的話, 可以用以下的方式
1. 宣告一個 executor 變數來存放等會兒發出的 web service request
2. 新增一個 invokingRequest 的事件處理, 像這樣
var executor = null; Sys.Net.WebRequestManager.add_invokingRequest(function(sender, args) { executor = args.get_webRequest().get_executor(); })
3. 最後再寫一個函式在你想要取消的時候呼叫, 以取消 web service request
function abortRequest() { if (executor.get_started() && !executor.get_aborted() && !executor.get_responseAvailable()) { executor.abort(); } }
這樣就 OK 了!
keywords: webservice, asp.net ajax, cancel, abort, executor, invokingRequest
沒有留言:
張貼留言