websockets是搜索框的一个很好的实现吗?

Abe*_*ejo 3 search html5 websocket

假设我有一个文本框/搜索框

<input type="search">
Run Code Online (Sandbox Code Playgroud)

然后我想只在光标聚焦在搜索框中时才将它连接到服务器.

该应用程序适用于Internet范围,搜索框可以监听每个按键.

您是否认为WebSockets是上述示例中搜索框的一个很好的实现?

gzo*_*ost 5

从你所说的我猜你想要实现像seachbox的自动完成建议,或搜索你的类型.根据我的经验,WebSocket适用于这些用例.

WebSocket是低延迟的,因此结果可以很快恢复.使用快速的后端和服务器,离用户不太远,您可以获得接近本机的本地性能.

如果有实际流量,WebSocket也只消耗带宽,因此您不需要为连接多个搜索框而支付任何流量惩罚.

我编写了一个演示应用程序,它使用WebSocket连接获取搜索框的自动填充建议(在Oracle DB后端搜索100万条记录).该演示目前尚未在线,但您可以在https://github.com/tavendo/WebMQDemo/tree/master/web/demo/autocomplete上查看代码.

演示的WebSocket部分非常容易实现.该演示在浏览器中使用AutobahnJS,它在原始WebSocket之上提供了一些舒适功能,并实现了PubSub + RPC协议(WAMP).例如,对于自动完成数据的请求的代码非常简单(第717行).

它需要运行crossbar.io服务器和Oracle DB - 而crossbar.io项目的网站目前正在建设中.所以现在不容易这样做.

完全披露:我为Tavendo工作,开始了Autobahn和crossbar.io项目.两者都只是作为示例给出的 - 您可以使用其他WebSocket技术.这正是我所熟悉的.