■100040 / inTopicNo.36) |
Re[11]: スマホブラウザのHP表示内容を強制更新したい |
□投稿者/ WebSurfer (2514回)-(2022/06/30(Thu) 11:38:05)
|
No100032 の私のレスで、
> お友達は「友達のスマホのブラウザ(AndroidのChrome)」だそうですので、明日
> Android のスマホの Chrome で試してみます。乞うご期待。
と書きました通り自分の Android の Chrome でやってみました。結果は Windows 10
の Chrome と同じです。もう一度それを書くと:
(1) 「Cookie とサイトデータ」を選んで削除しても css, js, img 等は削除できません。
(2) css, js, img 等が削除できるのは、「キャッシュされた画像とファイル」を選んで
削除した場合のみです。
という結果でした。
なので、サーバー側でなくクライアント側で対応するなら、「友達のスマホのブラウザ
(AndroidのChrome)」であれば:
「キャッシュされた画像とファイル」を選んで削除
・・・でしょう。
最初の質問で問題としていた Cookie が削除されることはありませんし、そのあとリロ
ードすれば新しい css, js, img 等が読み込まれて問題は解決します。
ちなみに、location.reload(); ではキャッシュの css, js, img 等は削除されないので
意味がありません。
という訳で、先に紹介した google の記事:
閲覧データを削除する
https://support.google.com/chrome/answer/2392709?hl=ja&co=GENIE.Platform%3DAndroid#zippy=%2C%E5%89%8A%E9%99%A4%E3%81%A7%E3%81%8D%E3%82%8B%E3%83%87%E3%83%BC%E3%82%BF
に書いてある「Android」と「パソコン」の情報はその通りということは確認できした。
(当たり前のことゆえわざわざ確認する必要もなかったようですが)
iPhone の Chrome は試せる環境がないので未確認ですが、上の記事の「iPhone とiPad」
に書いてあることは「Android」と「パソコン」と同じなので同じ結果になるはずです。
どのように確認したかを以下に書いておきます。
(1) 検証に使った html ソースは以下の通り。これを Web サーバー (IIS) にアップします。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>location.reload</title>
<meta charset="utf-8" />
<script src="../Scripts/Grid.js"></script>
<link href="../css/Grid.css" rel="stylesheet" />
</head>
<body>
<h1>location.reload</h1>
<img id="img1" src="../images/image1.jpg" alt="" />
<input id="Button1" type="button" value="Reload" onclick="location.reload();" />
</body>
</html>
(2) Android スマホを WiFi 接続し、Fiddler を割り込ませて要求・応答をキャプチャで
きるようにします。
(3) Android の Chrome を立ち上げて (1) の html ページにアクセスし、初期画面を表示
します。この時点で html ページ本体と js, css, img が読み込まれ、ブラウザのキ
ャッシュに保存されます。それが以下の画像の #4 〜 #11 です。
http://surferonwww.info/BlogEngine/image.axd?picture=2022%2f6%2f0630Fiddler.jpg
(4) その後、上の html ソースの Reload ボタンクリック、ブラウザのリロードボタンク
リックでリロードしても 304 応答が返ってくるだけで、コンテンツは返ってきません
し、js, css, img には要求さえも出ません。それが上の画像の #14 と #20 です。
当然キャッシュが書き換えられることはありません。
(5) 「キャッシュされた画像とファイル」を選んで削除した後リロードしたのが上の画像の
#29 〜 #36 です。html, js, css, img 全てに対して要求が出て応答が得ってきていま
す。そして、それらがキャッシュに保存されます。
(6) 「Cookie とサイトデータ」を選んで削除した後リロードしたのが上の画像の #43 です。
上の (4) と同じ結果で、js, css, img には要求さえも出ません。当然キャッシュが書
き換えられることはありません。
|
|