2011-10-31 79 views
0

有没有一种方法可以跟踪我的JavaScript代码是否正在其他网站上使用?跟踪使用我的Javascript

我为一家软件开发公司工作,虽然我不是一个开发商这样我也参与了一些我们从客户获得更加简单的Javascript请求。

但是,有时我们的客户希望看到的Javascript同意支付之前的工作。我的问题在于,虽然他们不会很技术化,但他们可能有足够的知识来查看页面源,并有效地“窃取”脚本。

我要么可以阻止他们这样做,或增加某种跟踪到我的代码的某个地方,所以如果他们做了简单的复制/粘贴,然后我可以以某种方式脚本收到通知在其他网站上使用?

谢谢

+1

是的,但他们可以删除它。 – SLaks

+0

显然..但我的工作依据是,虽然他们可能有足够的知识从页面源复制和粘贴,但他们不希望开始编辑脚本本身,因为担心它不起作用。 –

+1

只说不。这就像要求试驾一辆尚未建造的汽车。当然,如果汽车已经在这个地段,你可以把它拿下来,但它还没有出厂。 –

回答

1

这是不容易在所有WWW来跟踪你的脚本,但也有以保护您的js代码的方式。有很多网站进行编码和混淆像下面的网站:

http://javascriptobfuscator.com/default.aspx

他们将仍然能够使用你的代码,但您可以隐藏在模糊版本的一些保护代码,样试超时值,甚至发布一些值类似网站的URL到您的服务器进行跟踪。

0

将DOM API用于<script>标记,该标记指向服务器上的服务器端脚本并将其附加到<head>

使用jQuery:

$.getJSON('http://yourserver.com/TrackScript', { url: document.location }); 
+0

这只是增加了另一个步骤绕过任何潜在的小偷。他们下载脚本后,只需复制/粘贴到他们自己的* .js文件中即可。 –

+0

@ P.Brian.Mackey:我知道;在我对这个问题的评论中,我已经说过了。 – SLaks

7

有几件事情可以做:

  • 混淆您的代码,这样就更难找出对非技术人员复制。
  • 添加,检查页面的域名,并抛出一个异常,或做一些其他技巧来终止行,如果域名是不是你的演示服务器。
  • 向您的服务器添加Ajax查询以验证脚本是否允许运行并在没有验证时终止。

所有在这里说,只会防止非技术人员。 Javascript是一种解释型语言,因此整个代码被发送到浏览器。一个熟练的程序员会知道要绕过你的阻塞。

1
our customers want to see the Javascript working before agreeing to pay for it. 

可以实现通过设置演示机器良好的安全级别。让用户远程进入会话以提供产品演示。理想情况下,一个共享会话,你可以“通过它”(也就是看他们在做什么)。

到视频会议类似,但这样一来,他们可以使用浏览器。不要使站点公开,只运行web服务器本地(关闭防火墙上的端口80)。演示完成后,关闭远程桌面服务器并更改密码。

+0

+1做UAT – BryanH