2012-01-09 103 views
0

我想通過javascript通知瀏覽器端有關正在進行的會話超時。會話超時服務器推送Torquebox2

我目前的實現每隔一段時間輪詢一次URL以查明是否X秒保持到會話超時。

由於單純的學術比例原因,在Torquebox2環境中輪詢會話超時有什麼選擇?

例如,如果我使用websocket服務器,如何爲用戶添加會話超時信息,並且是否可以在推送信息後立即觸發客戶端?

有沒有一個簡單的寶石或替代品,爲我做大量的工作?

回答

1

網絡套接字肯定會比輪詢更好。

有一個在torquebox這裏https://github.com/torquebox/stomp-chat-demo

在這個例子中網絡套接字使用情況的一個很好的例子,會話信息被設置和讀取都在西納特拉應用程序,並在stomplets(類似於一個HTTP控制器,但對於網絡套接字)。 TorqueBox中的網絡套接字文檔顯示瞭如何在您的應用程序控制器中使用會話並在這裏使用http://torquebox.org/documentation/current/stomp.html#d0e3602

+0

謝謝,我看到演示,但我主要關注性能和安全性。在那個演示中,似乎任何人都可以編輯一些javascript,並將自己添加到公共名冊中作爲其他人。所以安全取決於我堅持。 (使用csrf元標記,也許?) – nurettin 2012-01-20 09:23:57

+0

關於TorqueBox如何公開Websockets的好處之一是它使用Stomplets,您可以認爲它是MVC意義上的控制器。在建立連接或從瀏覽器發送消息時,Web會話將作爲請求的一部分包含在內。這使您有機會在Web層(它可以說屬於的地方)處理身份驗證,並且您的小夥伴可以檢查會話以查看請求是否已通過身份驗證。 – lanceball 2012-10-31 13:29:24