node.js

时间:2015-10-20 20:12:20

标签: javascript node.js express

如何为node.js中的所有客户端会话创建一个通用的整数变量,并在客户端html中访问它们? (也就是说,我需要一个整数变量,它可以在html页面中显示,并且可以在html页面中更新。应该为其他客户端显示新的更新值。)我知道这是一个愚蠢的问题。但我很抱歉。我是node.js的新手,我没有太多时间。我最早需要一个解决方案。谢谢。

1 个答案:

答案 0 :(得分:1)

将公共变量放入网页有多种选择:

  1. 您可以在服务器提供的每个页面中嵌入一个实际的interest-categories标记。如果使用模板引擎,这种技术将是最简单的,这样每个页面都可以包含一个共同的子模板。

  2. 您可以让每个页面在首次加载时向服务器发送ajax调用以获取变量的值。

  3. 您可以让每个页面在首次加载时创建与服务器的webSocket连接,然后当服务器收到连接时,它可以发回变量的值。

  4. 当客户想要更新变量时,它有几个通知服务器的选项:

    1. 如果使用上面的webSocket连接,它只能向服务器发送变量已被更新的消息并发送新值。然后,服务器可以向其他webSocket连接的客户端广播新值。

    2. 如果使用上述其他两个选项中的任何一个,那么每当客户端想要更改该值时,它都可以向服务器发出ajax调用以更新该值。除了上面的webSocket选项之外,其他客户端知道变量值何时更改的唯一方法是每个客户端定期轮询服务器,要求获取变量的当前值(比如每30秒左右)。这不是特别有效。

    3. 因为您的问题的一部分是让所有连接的客户端知道变量何时发生变化,您需要能够让服务器“推送”#34;所有客户的更新值。这就是webSockets的发明,可能是推荐的选择。