2

我正在开发一个 mvc 应用程序(尽管适用于任何网站)并且想知道是否可以将暴露的 jquery 和 javascript 留在视图中?换句话说,当我运行程序并右键单击并查看源代码时,我可以看到我所有的 jquery 和 javascript。那安全吗?有没有办法隐藏所有这些,让用户看不到?感谢您的任何提示。

4

8 回答 8

2

没有办法对用户完全隐藏 javascript。JavaScript 是一种客户端技术。它在浏览器中执行。如果浏览器可以执行脚本,它也可以将其显示给用户。

您可以使用 JavaScript 混淆器软件使代码更难阅读,但您永远无法完全隐藏它。请参阅http://www.javascriptobfuscator.com/default.aspx以获取此在线示例。

JQuery 和其他库也是公开可用的,因此用户能够访问它没有任何危害。他们没有什么秘密。

如果您想要保护的代码中有秘密,您应该考虑尽可能将受影响的代码放在服务器上,而不是在客户端上进行处理。

于 2012-10-06T21:36:47.037 回答
2

为了让感兴趣的间谍更难阅读,您可以将脚本放在 .js 文件中并对其进行混淆。请参阅如何混淆(保护)JavaScript?了解更多信息。

于 2012-10-06T21:37:11.763 回答
1

Javascript 是在客户端上执行的,因此您实际上无法对客户端隐藏它。你真正能做的就是让用户更难通过混淆来阅读你的代码。

于 2012-10-06T21:36:57.450 回答
1

没有办法隐藏它。无论如何,没有理由这样做。如果您想混淆Javascript 代码,您可以找到使您的代码(对于人类)更难理解的软件(混淆器)以及使您的代码更小的所谓的缩小器。这是此类工具的一个活生生的例子:

http://closure-compiler.appspot.com/home

于 2012-10-06T21:37:06.740 回答
1

您正在寻找的是混淆。
关于为什么应该或不应该将它与 Javascript 一起使用,存在非常不同的意见。

请参阅如何混淆(保护)JavaScript?

于 2012-10-06T21:37:09.820 回答
1

不,您不能隐藏您的 JS - 请记住 JS 是客户端脚本,并且必须在客户端可执行,这意味着浏览器必须可以访问它。当浏览器可以访问它时 - 用户也可以看到它:)

于 2012-10-06T21:37:22.677 回答
1

隐藏是不可能的,您的所有 JavaScript 都需要客户端才能使您的网站正常运行。但是你可以混淆你的 JavaScript,换句话说,让你的代码变得更丑陋,所以没有人能真正理解你的代码,但浏览器会。

要混淆您的 javascript 代码,请查看:

UglifyJS JavaScript 缩小

于 2012-10-06T21:39:41.800 回答
1

嘿,您可以做一件事 onload 通过 Ajax 调用调用服务器端的操作,方法是返回 javascript 它永远不会显示在您的视图源中,但它可以被 firebug 看到,但它是一种将您的 javascript 产品与其他人联系起来使用它的方法一个简单的方法我已经完成了我的项目之一,即使通过这种方法你也可以隐藏你的 html

于 2012-10-06T21:47:22.877 回答