我有一個系統會每隔X秒更新一些關於用戶通知的UI細節(就像StackOverflow的通知,Gmail收件箱等一樣)。 我打算有一個web服務,將檢查新的通知,並讓它每X秒調用一次。事實是:我不想讓每個人都公開它,我只想讓它可以訪問我的系統,所以它是唯一能夠使用它的人。限制訪問web服務,所以只有我的應用程序可以使用它
有沒有辦法做到這一點?如果您有其他方法我希望聽到它,則不需要使用WebService。
我的系統是使用ASP.NET 4.0和Microsoft的MVC框架構建的。我可以打電話採取行動嗎?
我的問題是與此類似:How do I secure ASP.NET web service to only allow relative path calling?
但據我瞭解答案,他提出,web服務可以變成該系統是不能從外部訪問內部的普通類方法。這對我不起作用,因爲我想從客戶端訪問它。
感謝, 奧斯卡
PS:變化的基礎設施CONFIGS(例如:在內部服務器託管的話)將是很難做到的......
編輯:我想實現這個web服務更新通知號碼。這應該在不刷新頁面的情況下完成,因爲這個原因,我考慮過如果有任何通知和服務器驗證,如果有更新UI的話。
Edit2:我可以在我的系統內用一種普通的方法來轉換這個webmethod,那不會有問題。然後問題將變爲如何將客戶端連接到此方法?也許使用JavaScript調用一個動作,然後在這個動作中調用該方法?
這將是很好的,但我使用的AppHarbor託管服務,不給我這種靈活性....任何其他想法?正如之前所說,這個功能作爲一個Web服務來實現並不是強制性的...... – JSBach 2012-08-16 16:26:46
呵呵,那麼就不要把它作爲一個web服務來實現。使其成爲只有您的MVC應用程序才能訪問的類庫的一部分。 – 2012-08-16 16:27:51
可以這樣做,但我會如何將客戶端連接到庫調用?我會創建一個MVC動作,該動作將由客戶端使用JavaScript調用,並將調用類庫中的方法? – JSBach 2012-08-16 16:31:18