【问题标题】:Creating a single page web app as part of a website创建单页 Web 应用程序作为网站的一部分
【发布时间】:2013-04-15 00:45:30
【问题描述】:

我正在开发一个允许用户监控能源消耗的项目。主仪表板页面是一个非常简洁的 Web 应用程序,并且大量使用了 javascript 和 ajax。服务器当前运行apache,使用php;但是,我计划安装 node.js 并更新服务器端脚本以支持 websockets(我也喜欢在服务器端和客户端使用 javascript 的想法)。

我已经关注了几个在线介绍,但我很难找到具体问题的答案,其中一个概述如下。

节点的所有指南似乎只支持单页网络应用程序。这是一个问题,因为有许多不同的页面需要提供文件。我如何支持文件服务但启用其中一个页面使用 websockets。是否需要将此功能(仅一个页面需要)编码到站点上的主服务器脚本中,或者是否有办法将其分离,以便服务器转到仪表板 html 文件的服务器,然后发现该文件需要具体的 websocket 依赖?

非常感谢您花时间阅读我的问题。如果您能回答其中任何一个问题,甚至提供任何一般性建议,将不胜感激。

【问题讨论】:

  • 每个帖子一个问题,拜托。不过,其中大部分似乎都是题外话。
  • 我并不是要刻薄,但听起来你应该先使用 node,然后再深入研究这个项目,尝试 express.js 及其模板等。
  • @Juhana 好的,我已将其缩减为一个问题。我不完全理解这是题外话
  • @7zark7 我通常会同意,但由于时间压力很大,我没有时间开始在 ndoe 中开发应用程序,然后突然意识到我无法开发以这种方式应用程序,并且必须在 PHP 中重做所有事情。我认为这更有意义,首先要弄清楚我是否可以做我需要做的事情。

标签: javascript node.js websocket server-side


【解决方案1】:

1:指南使用单页 Web 应用程序的唯一原因是因为这是 node 的强项。 Node.js 提供静态文件和渲染模板就好了。只需在需要它的页面中包含 websockets 的 JS。

2:没有php那么简单,看一下express.js

3:是的,实际上你甚至不需要不同的端口,你可以在一行中在节点中编写一个代理。

4:CentOS 很好,节点与平台无关。所有的 linux 都有顶级的支持,其次是 osx、solaris 和 windows。

【讨论】:

  • 太棒了,不是很全面,但肯定切中要害。谢谢
  • 对于 3,代理对我有什么帮助?
  • 您可以将 node.js 放在公共端口上,将 apache 放在私有端口上,并根据需要向 apache 发出 node.js 代理请求。
猜你喜欢
  • 2020-05-16
  • 2012-08-14
  • 2014-04-05
  • 2014-04-22
  • 1970-01-01
  • 2017-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多