2010-12-03 75 views
0

嗨我想做一個簡單的ajax程序。WCF回調到AJAX?

我想從客戶端發送信息到服務器。
我想從服務器發送信息到客戶端。 (像每隔一段時間更新一次)

似乎簡單的權利?但我在網上找不到任何東西。所有的例子都是wpf和wcf交談的。或silverlight與wcf交談。但不是AJAX與wcf交談。特別是當我談論回調時。不只是客戶端發送一些東西到服務器

再次,我想在http中做。所以阿賈克斯與全雙工交流wcf服務。

你能指點我一個教程嗎?錯在一些關於如何做到這一點的信息?這聽起來很簡單,應該有一個樣本。無論如何,我都很希望。

BTW:客戶端需要輪詢服務器才能執行此操作嗎?如果是的話,是不是違背了使用wcf的目的?我在想客戶端需要輪詢服務器,所以服務器不會斷開客戶端連接。但如果是這種情況,爲什麼我不用.asmx來做這件事。

回答

0

解決此問題的一種方法是使用RESTful服務。這樣,您的AJAX客戶端就可以與您的wcf服務通話,並使用URI和http動詞爲CRUD請求資源。

0

這裏的東西,應該讓你開始:http://msdn.microsoft.com/en-us/library/bb412167.aspx

是,爲了從服務器獲取定期更新,客戶端需要輪詢服務器。沒有其他方法可以在Web應用程序中實現這一點。 Web服務器將永遠不會調用瀏覽器。它只會回覆請求。

使用AJAX時沒有可行的方法來實現全雙工。

0

WCF只是一種通過.NET以各種方式公開您的服務的方式。作爲HTTP公開只是其中一種常用方式。所以我不會說它「打敗了目的」。您可能必須進行輪詢,因爲進行雙工通信並且所有瀏覽器都不支持使用HTTP的開放式套接字。你可以在這裏閱讀更多關於它的信息:

Comet with HTTP