2017-05-13 3 views
6

私はプランナーのような遊び場を作ろうとしています。私はちょうどlocalhostでうまく動作するのに対し、Cloudflareではactive modeと非常に奇妙な動作に気づいた。 iframeことでiframeのsrc内の外部ファイルが(CloudFlareで)キャッシュされないようにします。

、他のファイル(例えば、.html.js.css)へのリンクが含まれていてもよい遊び場プレビューindex_internal.htmliframeは、<script src="script.js"></script>のような外部リンクを解釈することができます。

したがって、各時間は、ユーザーが自分のファイル(例えば、script.js)を変更し、エディタ上の私のプログラムは、サーバー上の一時フォルダに新しいファイルを保存し、その後、iframe.src = iframe.srcではiframeをリフレッシュし、それがlocalhostに適しています。

しかし、私は生産で、ブラウザは常に、ユーザーがエディタでそれを変更し、新しいバージョンがサーバ内のフォルダ内に書かれているにもかかわらず、初期script.jsをロードし続ける、ということに気づきました。たとえば、Dev Tools ==> Networkに表示されているものは、常にscript.jsの初期バージョンですが、サーバーに保存されているscript.jsの新しいバージョンを確認することはできますが、左側にはlessと表示されています。

誰がこのような理由を知っていますか?それを修正する方法は?

enter image description here

編集1:

私はscript.jsでは動作しませんでした次のことを、試してみました:

var iframe = document.getElementById('myiframe'); 
iframe.contentWindow.location.reload(true); 
iframe.contentDocument.location.reload(true); 
iframe.contentWindow.location.href = iframe.contentWindow.location.href 
iframe.contentWindow.src = iframe.contentWindow.src 
iframe.contentWindow.location.replace(iframe.contentWindow.location.href) 

私はそれがindex_internal.htmlと協力し、バージョンを追加しようとしましたが、再読み込みしませんでしたscript.js

var newSrc = iframe.src.split('?')[0] 
iframe.src = newSrc + "?uid=" + Math.floor((Math.random() * 100000) + 1); 

Cloudflareをdevelopment modeに変更すると、script.jsがリロードされますが、Cloudflareをactive modeに保存します。

答えて

関連する問題