2011-07-08 6 views
2

JavaScriptコードを変更するかどうかを確認するjavascriptメソッドはありますか? 例:Javascript:コードスニペットでユーザーが変更を行うか確認してください

<div id="mycodestyle"> 
<a href="http://www.example.com"><img src="image.gif"></a> 
</div> 

ユーザーが今

<div id="mycodestyle"> 
<img src="image.gif"> 
</div> 

のようなコードを変更した場合、彼は取得がメッセージだ - >コードが変更されました。エクストリートトラッキングは同じ方法を使用しますが、どのように行うのか分かりません。 はここ

<div id="eXTReMe"> 
<a href="http://extremetracking.com/open?login=example"> 

<img src="http://t1.extreme-dm.com/i.gif" style="border: 0;" 
height="38" width="41" id="EXim" alt="eXTReMe Tracker" /></a> 
<script type="text/javascript"><!-- 
EXref=""; 
top.document.referrer?EXref=top.document.referrer:EXref=document.referrer; 
//--></script> 
<script type="text/javascript"><!-- 
var EXlogin='example' // Login 
var EXvsrv='s10' // VServer 
EXs=screen; 
EXw=EXs.width; 
navigator.appName!="Netscape"?EXb=EXs.colorDepth:EXb=EXs.pixelDepth; 
EXsrc="src"; 
navigator.javaEnabled()==1?EXjv="y":EXjv="n"; 
EXd=document; 
EXw?"":EXw="na"; 
EXb?"":EXb="na"; 
EXref?EXref=EXref:EXref=EXd.referrer; 
EXd.write("<img "+EXsrc+"=http://e1.extreme-dm.com", 
"/"+EXvsrv+".g?login="+EXlogin+"&amp;", 
"jv="+EXjv+"&amp;j=y&amp;srw="+EXw+"&amp;srb="+EXb+"&amp;", 
"l="+escape(EXref)+" height=1 width=1>"); 
//--></script> 
<noscript><div id="neXTReMe"><img height="1" width="1" alt="" 
src="http://e1.extreme-dm.com/s10.g?login=example&amp;j=n&amp;jv=n" /> 
</div></noscript> 

</div> 
+0

「コードを変更する」とはどういう意味ですか?文書を保存して変更することによって? Firebugなどのデバッガを使用することによって?ブックマークレットを使って? – slaphappy

+0

ユーザーは自分のウェブサイトからスクリプトをコピーして自分のページに貼り付けることができます。しかし、彼がスクリプトを変更すると、エラーメッセージが表示されます。 – celebo

答えて

2

短い答えをextremetrackingのコードです:はい、絶対に可能。

DOMHTML MarkupをJavascriptで視聴することはもちろん可能です。特定のものをチェックする何らかの種類の間隔を持つこともできますし、DOM Level 3 Mutation EventsDOMNodeRemovedまたはDOMSubtreeModifiedなど)を使用することもできます。

実際の質問は、です。ですか? NO


すべてのClientsideコードは、誰かがあなたのHTMLマークアップを変更したのと同じ方法で変更されたり削除されたりする可能性があります。この種のセキュリティはクライアント側だけにある可能性はほとんどありません。 あらゆる種類の検証のために、完全なHTMLコード(またはその一部のみ)をサーバーに送り返す必要があります。

+0

ええ、素晴らしい答え。ありがとうございました! – celebo

0

はい、これは、たとえば、ページのコンテンツをハッシュすることによって可能です。しかし、これは本当に悪い考えです。コードに追加する保護システムは、ユーザーが既に変更しようとしているので、ページから削除することができます。

実装しようとしているのは、何らかの種類のソフトウェア保護システムです。これらのシステムは、バイナリを配布するときには、分解とリバースエンジニアリングが困難で、時間がかかるため、時間をかける必要があります。しかし、ここではJavascriptについて話していますが、Javascriptの読み込み/デバッグは簡単です。保護を担当する部分を切り取ることができます。 JavaScriptを使用して

  • は、あなたが
  • はMD5
  • のようなハッシュメソッドを使用します(つまり、 InnerHTMLを使用して)保護したいページの内容を読む:あなたが主張する場合

    しかし、ここで私のソリューションです。

  • AJAXリクエストを使用してサーバー上にあるものとハッシュを比較してください。
関連する問題