【问题标题】:communication between thin and thick client瘦客户端和胖客户端之间的通信
【发布时间】:2012-12-11 23:41:35
【问题描述】:

我有一个在浏览器窗口(瘦客户端)上运行的 Web 应用程序。

我想从外部应用程序(厚客户端)向这个 Web 应用程序(窗口已经打开)发送一些信息,而不通过服务器(客户端到客户端)。

我找到的解决方案如下:

  • thin client 在 URL 中打开:http://xx/index.html
  • thick client 打开一个新的浏览器窗口,其 URL 为 http://xx/send.html?var=val
  • 新的浏览器窗口使用“localStorage”将var=val 发送到瘦客户端。
  • 新的浏览器窗口会自行关闭。

我有以下问题:

  • 有没有办法关闭 FF 中的临时窗口,一旦它完成其目的? window.open('','_parent',''); window.close(); 在最新的 FF 版本中不再有效。
  • 有没有办法在IE7中使用localStorage事件?
  • 还有其他方法吗? (胖客户端和浏览器之间的通信)。

谢谢。

【问题讨论】:

  • 您可以在胖客户端上托管轻量级 Web 服务。胖客户端是用什么语言/框架实现的?
  • @fencliff 它是第三方软件。他们可以做一些定制,但不多。
  • 另外胖客户端需要pushWebApp的信息..所以胖客户端中的WS不够轻量级
  • 从胖客户端打开 URL 时有哪些方法可以使用?你能控制从胖客户端以某种方式打开的窗口吗?您可以与从胖客户端打开的窗口进行交互吗?附带说明:+1 用于在瘦客户端将连接到的胖客户端上实现 websocket 服务。
  • @WTK 我们可以要求胖客户端供应商控制打开的窗口(即关闭它),但他们怎么知道它已经完成了它的目的?如果他们在固定超时后关闭它,则:1- 可能窗口尚未加载 2- 可能它在几秒钟前已经完成加载并且用户一直空闲等待窗口关闭

标签: javascript local-storage thin-client thick-client


【解决方案1】:

如果您不想修改现有服务器,您可以设置另一个 Web 服务器作为胖客户端和瘦客户端之间的桥梁。

认为客户端会向桥接服务器发送信息,而瘦客户端会等待来自桥接服务器的更新。

客户端一次可以与多个服务器交互。

胖客户端需要向瘦客户端推送什么样的信息?是简单的文字还是更复杂的文字?

【讨论】:

  • 这只是文本,但问题是安装中间服务器需要安装另一个厚软件(tomcat 服务器左右......这需要大量部署,因为有数百个客户端......)
  • 希望我正在使用 flex 并且它能够建立 tcp 连接。所以一个轻量级的java服务器就可以了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-12-18
  • 2011-05-07
  • 1970-01-01
  • 2022-07-11
  • 1970-01-01
  • 2012-04-09
  • 2021-09-22
相关资源
最近更新 更多