【问题标题】:JavaScript: from server to clientJavaScript:从服务器到客户端
【发布时间】:2013-08-07 06:31:28
【问题描述】:

我正在从事一个项目,该项目涉及在 .js 库的顶部构建 Web 服务。我成功地完成了,但现在我创建了另一个库(或其他东西),其中所有内容都应该从客户端进行自定义,服务器应该只提供 JavaScript 函数,以便客户端可以使用按钮附加它们并使用它们。

现在,我能想到两种可能的实现方式:

  1. 创建一个新的 .js 库并提供客户端在包含我的 .js 文件后可以使用的功能。

    (开销 - 客户端仍然必须包含我在我的库中使用的其他 .js 库...坦率地说,这对客户端来说是一种开销,可能不是解决问题的好方法)。在这种情况下,我的服务器将只处理我的 .js 库在客户端使用的数据。

  2. 我直接将必要的 JavaScript 函数与处理后的数据一起返回,这样客户端就不必知道我的内部实现,并且可以以更少的开销工作。

问题是我不知道如何采用看起来很有希望的第二种方法。是否有任何示例实现,或者第一种方法的更好方法?

【问题讨论】:

  • 我只能说,即使您使用外部 JS 库,客户端或最终用户仍然可以看到该代码。如果您真的想“保护”您的代码,请创建一个 Web 服务并从服务器端调用它
  • 谢谢@AnaMaria。如果他们能看到源代码就好了。因为我正在使用的库已经可供公众使用。但我确实希望我的客户单独包含其他 .js 库只是为了让我的库工作..对他们来说,这一切都应该来自服务器的单个请求...可以这样做吗..?
  • 为什么不写一个简单的脚本来创建一个合并的JS文件。
  • @closure:你能给我一个这样做的样本吗?

标签: javascript jsp jquery servlets


【解决方案1】:

好的。让我试着用我自己的话来解释一下。

据我了解您的问题,您不想在代码中包含所有 JS 库,而是希望将数据传递给 JS 库和然后您的库中的内置函数会处理您的数据并返回处理后的输出

我还没有听说这样做过。也许是这样,我们可以等待有关此的答案。但理想情况下,您要做的是创建一个“Web 服务”。

所以这个“Web 服务”基本上就像你的“外部 javascript 函数”。您将数据传递给 Web 服务,这些数据将被处理并返回给您。然后,您处理此输出并以您喜欢的方式显示它。

简单地说,您必须设计一个带有函数的 Web 服务,其行为方式与您的 Javascript 函数一样。

【讨论】:

  • 谢谢@AnaMaria。我已经创建了一个 servlet,它可以执行您提到的可能的解决方案。但我想要的是向我的客户端公开单个函数而不是呈现的 HTML,以便客户端可以将这些函数与自定义按钮绑定。
猜你喜欢
  • 2011-10-14
  • 2018-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-24
相关资源
最近更新 更多