使用AngularJS的Web-Dev:我应该使用哪种服务器软件?

时间:2015-02-17 17:57:10

标签: ajax angularjs jsp

我对这个概念有疑问:

我已经缺席了大约3 - 4年的网络开发实践,现在,当我尝试回归它并采用最后的技术时,我感到非常困惑。

过去,我习惯使用JSP / PHP / Java Servlets或其他一些处理服务器页面然后将其发送到客户端的技术。例如(JSP):

<% for (String s : names) { %>
    <% =s %>
    </br>
<% } %>

如果我理解正确,现在, AngularJS 应该在客户端上执行循环,而不是在服务器上执行Java,并且数据应该由客户端以JSON格式实现,使用AJAX调用到服务器。

  1. 我的理解是否正确?
  2. 如果是这样 - 我认为我需要的只是一个能够定义AJAX功能的服务器 - 我不再需要将服务器代码与客户端代码混合(即我不需要JSP / PHP / Java Servlets /等)。那么是否有新的简单服务器技术被指定用于启用这些AJAX调用?现在推荐哪些服务器技术并常用于Java和Python中的这些目标?

2 个答案:

答案 0 :(得分:1)

是的,您的理解是正确的。 AngularJS是一个选项,还有其他JavaScript框架以类似的方式工作 - Angular似乎是目前最受欢迎的。

对于服务器,您可以使用几乎任何技术,标准是通过RESTful Web服务提供JSON数据。

如果您想在服务器上使用JavaScript,那么使用Express的Node.js很受欢迎(并且易于使用)。

如果您想使用Java,您可以使用JBoss或Jetty之类的服务器作为服务器,然后使用Resteasy之类的东西作为RESTful服务来公开您的服务。添加到现有应用程序相当容易。

我建议您从Angular tutorial开始,这将详细介绍其中的许多概念。这是一个很好的起点。

答案 1 :(得分:1)

正如所建议的,您的后端服务器将向客户端发送JSON。然后,客户端可以使用像AngularJS这样的前端框架动态地在页面上呈现HTML。

后端语言是什么并不重要。但是,为了获得最佳性能,有些人建议您在将HTML发送到浏览器之前再添加back-end layer between your server and the browser。他们说这会带来更好的性能和搜索引擎优化。 Node.js可以很好地用作渲染层,因此您可以简化技术堆栈并使用Node.js作为整个后端。

此外,使用某些前端框架比使用其他前端框架更容易实现服务器端呈现。这是React最近趋势的原因之一。使用它实现服务器端渲染更容易。