我想制作javascript + html5应用,但我不想显示我的"引擎"对人民来说。有没有办法隐藏Web浏览器渲染页面不需要的部分代码?
如果可能的话,我想避免使用php ...
现在我考虑一下,不会将外部.js的权限设置为"仅执行"诀窍还是根本不加载?
令人遗憾的是html5无法使用.dll'
你可以缩小和捏造。是否有一个特定的原因你不想使用服务器端语言,或者只是你反对的php?
我想避免服务器端语言,因为我有便宜的托管。更多用户会杀死我的网站。
这是一个祝福html5不能使用.dlls; o)
如果您希望封闭源网站主要在客户端运行......无论......
感谢回应,蒂姆和其他所有人!我会尝试缩小和捏造javascript,并在php中执行关键部分。
答案 0 :(得分:13)
如果它随时被下载到用户代理(网络浏览器),则无法真正隐藏它。
如果您有复杂/专有的流程,请在服务器上运行(使用您选择的任何语言,包括JavaScript),并仅将结果返回给浏览器。
如评论中所述,您可以通过缩小/混淆代码来使解释源变得更加困难。
缩小可以使你的脚本显着缩小,并将多个文件合并为一个,所以这绝对是件好事;只是没有安全机制。缩小代码通常(直接或间接)混淆代码,即它更难阅读和解释,但仍然可以被温和的观察者完全访问。
作为参考,这是一个很好的缩小工具列表:Is there a good JavaScript minifier?
现在我考虑一下,不会设置权限的外部.js “仅执行”是否可以完成任务?或者根本不加载?
这是与服务器相关的权限。如果代码可以由浏览器执行,则确定的(甚至是随意的)用户可以获得源。
我想避免服务器端语言,因为我有便宜的托管。 更多用户会杀死我的网站。
请参阅How to find web hosting that meets my requirements?
您可以使用免费工具在自己的计算机上进行开发,甚至最基本的主机软件包通常至少提供一种服务器端语言。
这是一个祝福html5不能使用.dlls; o)
如果您想要主要在客户端上运行的封闭源网站 一边......不管......
对于本机代码来说,这将是完全的地狱......需要将DLL编译成每个平台的机器代码。使用中间代码(如CIL)仍然需要每个用户都安装了运行时,它的反向工程几乎和JavaScript一样容易。
答案 1 :(得分:0)
理论上,您可以为用户提供更难的时间......请参阅node.js
Node.js是一个基于Chrome JavaScript运行时的平台,可轻松构建快速,可扩展的网络应用程序。 Node.js使用事件驱动的非阻塞I / O模型,使其轻量级和高效,非常适合在分布式设备上运行的数据密集型实时应用程序。