是否必须让客户端成为Web服务器的浏览器?这是一个很好的架构,移动客户端有一些非浏览器客户端并从Web服务器获取数据?
我正在考虑在移动客户端上实现基本浏览器。使用web方法登录并使用网络套接字完成其余的通信(每10秒监控一次信息)。这有用吗?
我可以在没有JS的情况下实现Web套接字吗?
由于
答案 0 :(得分:10)
您可以在浏览器之外实现WebSockets,而不涉及任何JavaScript。您可以拥有一个Android本机Java应用程序,它通过WebSockets与服务器通信。
WebSockets是一种协议。为在浏览器中运行的JavaScript定义的WebSockets API是不同的。
您可以使用HTTP提供的任何方法(即基本身份验证,摘要,cram-md5,基于客户端证书(TLS)等)在WebSockets握手期间验证WebSockets连接,因为WebSockets握手仍然是像任何其他HTTP对话一样。只有在握手完成后,WS才与HTTP不同。
请注意,您在服务器端可能需要的不是普通的旧Web服务器,而是WebSockets服务器/框架。
使用WS连接移动客户端是“一个好的架构”有点模糊。我会说: if 你决定让你的移动客户端与服务器通信,并且该服务器在你的控制之下,并且你想利用近乎实时/双向的WS优势,那么它可能会好。比烹饪自己的低级协议更好。