令人惊讶的是,更多程序员社区中的程序员会问“我如何做EXTJS后端?”等问题。或者“我如何将jQuery与Java集成?”,而不是理解客户端和服务器之间的区别。然后我开始思考,是否存在服务器实际向客户端发送JS或其他内容的框架?围绕这些方法的哲学思想是什么?
编辑 - 澄清:
我不是在问它是否可能,我在问它是一个好策略还是皱眉头。我不是在问客户端语言是否可以在服务器上运行。我在问是否有围绕动态提供动态客户端代码的框架。答案 0 :(得分:1)
许多不同的框架都是这样做的,当你在做ASP.NET工作时,你会经常看到客户端的POSTBACK调用,这是由框架生成的,是一个Javascript调用。在Java世界中,大多数JSF框架都或多或少地达到了这个目的。只要你记住“永远不信任客户”的规则,我认为这没有任何害处。因此,如果您要在客户端上使用Javascript进行字段验证,那么就不会让您不必在服务器端执行相同的检查。不久前我做了一个较大的Flex应用程序,作为其中的一部分,我开始创建一个读取Hibernate Validation注释的模块,并在Actionscript上自动创建相同的验证,在我走得太远之前死亡,但我确实喜欢能够在后端设置一次验证并在客户端上检查它们的想法,从而节省了到服务器的往返。
答案 1 :(得分:0)
向客户端发送JavaScript非常简单。只需将脚本标记中的URL指向动态脚本,而不是静态.js文件。
至于在服务器端运行JavaScript,Node.js之类的东西允许你这样做,尽管他们没有与浏览器进行相同级别的交互。
答案 2 :(得分:0)
物理障碍肯定存在。 HTML / JavaScript / ActionScript将在客户端空间中运行,并且(实质上)将对后端进行远程过程调用。由于这个裂痕,你将无法消除客户端/服务器架构。
据说Pierreten说明微软的ASP.NET API大量使用自动生成的JavaScript来与服务器端组件进行交互。也就是说,您将一个表单控件添加到项目中,并为您生成服务器和客户端代码。
答案 3 :(得分:0)