如何使用Javascript阻止查看页面源?

时间:2009-10-10 07:00:31

标签: javascript

如何使用File>阻止下载页面源代码;另存为?

5 个答案:

答案 0 :(得分:30)

这是不可能的,你甚至不应该费心去尝试,因为:

  • 认识到来源的用户,很可能还有下载它的知识。
  • 不知道整个源概念的普通用户只会被阻止源的徒劳无益的烦恼所困扰(“为什么我的鼠标右键不在这个网站上工作?我想做的就是创建一个书签。 “)

只看看微软,亚马逊和公司,以及DeviantArt这样的网站:所有这些企业显然都花了很多精力(=钱)进入他们的网站,他们没有做任何事情来阻止源访问。

另一方面,我看过许多小型私人网站,其中没有真正的内容或价值,这些网站的创建者试图阻止访问其来源。

根据经验: 任何骚扰合法客户的复制控制技术都不会得到回报,从长远来看会损害您的业务。

答案 1 :(得分:12)

您无法阻止此行为。即使您能够在任何特定浏览器中阻止它,您仍然提供浏览器为您呈现的代码内容,有人可以创建原始请求并查看源。

答案 2 :(得分:9)

作为一个更具建设性的答案,如果你在谈论阻止人们下载你的javascript文件,你就不能,但是你会尝试混淆/混淆/将脚本文本打包成几乎不可读的东西。

Try this javascript obfuscator。它看起来效果很好!

作为一个说明,这不会阻止有决心的人,但肯定会让他们放慢速度。

答案 3 :(得分:4)

你做不到。在浏览器中查看页面时,页面实际上已经被下载了。如果您想保护内容,您可能会对源进行模糊处理,并且根据您正在执行的操作,您可能会在页面下载后使页面无法正常运行(即,使页面的某些行为依赖于对服务器的Ajax请求)。但总会有解决方法。

答案 4 :(得分:0)

<!-- Right Click Disable -->
<script type="text/javascript">
<!-- 
var message=""; 
function clickIE() {if (document.all) {(message);return false;}} 
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) { 
if (e.which==2||e.which==3) {(message);return false;}}} 
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;} 
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;} 

document.oncontextmenu=new Function("return false") 
</script>
<!-- Right Click Disable -->