您能否使外部.js文件仅适用于一个域



我有一个外部.js文件,我将其加载到我的一个站点上以流行jquery图表。 我不希望其他人能够复制我的代码并让它为他们工作,那么有没有办法让.js文件只在单个域上工作? 有点像如何防止图像被热链接到其他域。

根据您的插件的作用,可能会有一个解决方案。执行此操作的有限方法是 CORS - 从域加载脚本,并让它从同一(子)域加载数据。如果该服务器禁用了跨源请求,那么如果有人只是使用您的源文件,他们的数据请求将失败 - 因为同源策略。

当然,这并不限制人们只是将您的代码复制/粘贴到他们的站点并使用他们自己的代码 - 但如果您只是想阻止您的服务器成为他们的 javascript 文件的主机,那么这可以做到。

查看此链接以获取有关同源的更多信息:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Same_origin_policy_for_JavaScript

或者,使用服务器端代码来生成这些图形 - 因为没有什么可以阻止客户端下载您的 JavaScript 源代码。

最新更新