比方說,我有一個文本/搜索框websockets是搜索框的一個很好的實現嗎?
<input type="search">
然後我想將它連接到只有光標聚焦在搜索框的服務器。
該應用程序旨在用於全網使用,搜索框會偵聽每個按鍵。
您認爲WebSockets是像上述示例一樣的搜索框的好實現嗎?
比方說,我有一個文本/搜索框websockets是搜索框的一個很好的實現嗎?
<input type="search">
然後我想將它連接到只有光標聚焦在搜索框的服務器。
該應用程序旨在用於全網使用,搜索框會偵聽每個按鍵。
您認爲WebSockets是像上述示例一樣的搜索框的好實現嗎?
從你的意思我猜你想要實現像自動填充建議爲seachbox,或搜索你的類型的東西。根據我的經驗,WebSocket適用於這些用例。
WebSocket是低延遲的,所以結果回來非常快。通過與用戶距離不遠的快速後端服務器,您可以獲得接近本地的本地性能。
如果有實際的流量,WebSocket也只會消耗帶寬,所以你不會因爲有很多搜索框連接而支付任何流量處罰。
我編寫了一個演示應用程序,它使用WebSocket連接爲搜索框(在Oracle DB後端搜索1百萬條記錄)獲取自動填充建議。該演示目前不在線,但您可以查看代碼https://github.com/tavendo/WebMQDemo/tree/master/web/demo/autocomplete
演示中的WebSocket部分非常易於實現。該演示在瀏覽器中使用AutobahnJS,該瀏覽器在原始WebSocket上提供了一些舒適功能,並實現了PubSub + RPC協議(WAMP)。代碼例如對於自動完成數據的請求非常簡單(第717行)。
它需要crossbar.io服務器和Oracle數據庫才能運行 - 而crossbar.io項目的網站目前正在建設中。所以目前不容易。
完全披露:我爲Tavendo工作,它開始了Autobahn和crossbar.io項目。兩者都只是作爲例子給出 - 還有其他WebSocket技術可以使用。這正是我所熟悉的。