由于Jaxer存在的时间更长,如果您是像我这样的开发人员,刚开始在服务器端使用JavaScript编程,那么它是比Node.js更好的解决方案吗?
发布于 2011-08-18 04:10:25
尽管Jaxer和Node.js都使用JavaScript作为语言,但它们实现了两个不同的目标。Jaxer的目标似乎是一种服务器端Web脚本语言(如PHP或ASP.NET),而Node.js则更像是一种能够提供网页服务的通用事件驱动网络服务器框架。
你应该选择哪种解决方案完全取决于你想要做什么。如果您可以通过服务器端JavaScript的目标来扩展您的问题,那么我们可以为您提供更好的建议。
发布于 2011-08-19 03:26:49
Jaxer和node.js是非常不同的东西。
可以将Jaxer想象成在服务器端运行的Firefox,但是它与外部世界的接口是Apache,而不是GUI。它几乎可以做客户端浏览器能做的任何事情:从第三方服务器获取页面,对该页面运行JS,通过DOM从其中提取元素,将新内容替换到其中,等等。
Jaxer的工作方式也或多或少类似于ASP或PHP,只需在Jaxer通过Apache提供的HTML文件内的特殊标记内执行JS,这样您就可以将一些动态内容插入到那些原本是静态的页面中。
Jaxer有一个巨大的缺点:它是dead technology。
另一方面,node.js不是在服务器上运行的浏览器,它现在非常活跃,并且它与Apache或任何其他标准web服务器没有任何联系。
您可以使用node.js的HTTP component构建自己的web服务器,但这会带来The Lisp Curse:因为没有标准的web服务器,所以每个人都以不同的方式构建自己的web服务器,因此没有集中的专业知识。
同样的道理也适用于ASP或PHP类型的平台中的模板和其他东西:没有完整的内置组件意味着您最终只能从提供的组件中组装自己的组件。
这使得node.js最适合那些你必须自己重新实现所有东西的项目,所以你想要的是一盒工具和组件,而不是一个“平台”。如果您可以将您的项目描述为web应用程序,这意味着它是一个恰好通过web显示其UI的应用程序,并且它的大部分内容是动态生成的,而不是通过文件提供的,那么node.js可能是一个很好的选择。
如果你只需要将一些动态内容替换成一个主要是静态的表示,那么,我不能真正推荐Jaxer,但是像Jaxer这样可以插入标准web服务器的东西是一个更好的选择。
https://stackoverflow.com/questions/7098558
复制相似问题