2017-03-18 9 views
1

私はウィキの簡単なWebベースのバージョンを作成しようとしています。これはURLで始まり、ウィキペディアのページのリンク。一般的なアイデアは、iframeにwikipediaの開始URLがあり、iframe内でユーザーがリンクをクリックして他のページに移動できるということでした。<iframe>(Wikiゲーム)内のユーザのクリックを追跡する

iframeのコンテンツがWebアプリケーション自体と同じドメインからホストされていない限り、iframe内のユーザーの活動を追跡するのに制限があるようです。そのため、ユーザーが別のページにつながるiframe内のリンクをクリックした場合、ユーザーが行った新しいページを追跡する方法が見つかりません。たとえリンクの名前を取得できたとしても、これをクリックするだけで十分です。たとえば、ヨーロッパのiframe内のリンクをクリックした場合、PHPを使用して新しいページに移動し、新しいウィキペディアiframeを動的に読み込むことができます。次のようになります。

<?php 
    $article = $_GET["article"]; 
?> 
<iframe id="frame" src="https://en.wikipedia.org/wiki/<?php echo $article ?>" 

iframe内のユーザーアクティビティをトラッキングするための明らかな方法はないようです。助言がありますか?また、私が目指しているものと同じ一般的な考え方を持ったゲームのバージョンへのリンクもあります。また、ウィキペディアのページを格納するためにiframeを使用するように見えます。セキュリティ上の理由から

http://cs.mcgill.ca/~rwest/wikispeedia/

答えて

0

あなたはiframeのURLにコードを追加することができない場合、あなたはそのページとの相互作用を測定することはできません。あなたのプロキシの代わりに、元のターゲットを参照するためにページ上のリンクを書き換える必要があります

window.postMessage(window.location,'*'); 

しかし、あなたはいくつかのコードを挿入し、プロキシを作成することができます。

は、その後、あなたのホストのページ:

window.addEventListener("message", onMessage, false); 

function onMessage(event) { 
    console.log(event.data); 
} 

これは効果的にあなたに属しているURLに任意のコードの実行を聞かせていることは注目に値します。おそらくセキュリティ上のリスクがあります。

関連する問題