您是否知道一种保护JS代码的方法,并且只有在远程请求时才能使其可见?

Leo*_*rdo 4 javascript javascript-framework

理论上JS在浏览器中运行,然后在第一次下载后可以轻松复制并直接从本地运行,而无需通过远程服务器.因为我需要出售一个应用程序*js(按使用付费)我需要检查每个请求,并且只在该特定网站需要时才提供,当然,只有当他付费时才需要.

Ale*_*ler 5

它不起作用.只要有人下载了JavaScript文件的副本,他或她就可以随时保存它的副本,甚至可以重新分发它.

因此,您无法保护JavaScript本身 - 但假设您依赖某些客户端 - 服务器交互(即AJAX),服务器将不会响应来自非授权来源的请求,从而使客户端变得毫无价值.

如果您需要保护业务逻辑,请不要将其置于JavaScript中.或者,在未获得许可证的情况下起诉使用您的脚本的所有人(不确定这是否实用,但是......).


Ste*_*dge 5

我不会直接在URL上创建您计划销售的JS文件

yourdomain.com/yourfile.js
Run Code Online (Sandbox Code Playgroud)

我会在像这样的URL上提供它

yourdomain.com/getfile
Run Code Online (Sandbox Code Playgroud)

其中/ getfile是由PHP/Java等服务器端语言处理的URL,您可以在其中检查需要检查的任何凭据,无论是请求域名,IP地址,某些令牌还是其他内容.