WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:ブラウザを定期的に自動更新したい

0:[投稿] いずみ [2003/05/15 11:14 ][環境:IE6 Win2000 IIS]

IEを自動的に表示更新する方法を探しています。

サーバに(たとえば)5秒ごと変更される画像があって、
それをブラウザでも5秒ごとに最新の画像を自動表示したいのです。

CGIではなくASPでやりたいのですが、方法を知っている方がいましたらそのコードなど教えていただきたいです。お願いします。


1:[回答] 笑いぼくろ [2003/05/15 11:53 ]

metaのリフレッシュじゃあかんのかな?チャットcgiなんかだと常套手段だけど。


2:[質問] いずみ [2003/05/15 14:44 ]

ありがとうございます。
そうか、そんな方法があったのかとウキウキしながらやりましたができませんでした・・・。
たしかにリフレッシュの動きはしていますし、ソースの内容も更新されているのですが、画像はかわりませんでした。
キャッシュの無効化というのもやりましたが相変わらずでした。

<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="expires" CONTENT="-1">
<META HTTP-EQUIV="Refresh" CONTENT="5">

F5を押すと画像が更新されます。


3:[回答] ごだっち [MAIL] [URL] [2003/05/15 15:26 ]

こんな風に画像を毎回読み込ませる方法ではどうでしょうか?

<script type="text/javascript">
<!--
var url = "xxxx.gif" ;
function new_image(){
    var now_for_cache = new Date() ;
    var new_url = url + '?' + now_for_cache.getTime() ;
    document.getElementById('mov').src = new_url ;
    document.frm.txt.value = new_url ;
    setTimeout("new_image()",5000) ;
}
//-->
</script>
<body onload="new_image();">
<img id="mov" src="xxxx.gif" width="250" height="200" alt="hoge">
<form name="frm" id="frm">
<input type="text" name="txt" id="txt" size="60">
</form>
</body>


4:[完了] いずみ [2003/05/15 16:31 ]

ごだっちさんありがとうございました!
この方法ならばできます。
metaでやろうとするとやはりキャッシュの問題にぶつかってしまうので、どの環境でもできるかはちょっと怪しいところなのでした。
ありがとうございました。


5:[完了] ひじ [URL] [2003/05/15 19:24 ]

>>2の方法では、HTML文書の有効期限が過ぎているとあるWebブラウザが解釈する程度の効果しかありません。画像はキャッシュされ、その有効期限は不定、と解釈されます。

IISの設定の「HTTPヘッダー」というタブですぐに有効期限が切れるようにすれば、画像は毎回読み込まれるようになります。また、 Cache-Control: must-revalidate というヘッダを追加しておくとよいでしょう。
#このような場合に「キャッシュさせない」というやり方は良くないです。ファイルが更新されていなくてもファイルを全てダウンロードしなければならなくなり、サーバやネットワークに負担がかかります。

>>3 のやり方が無難だとは思いますが。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World