メニューボタンのないデバイスでChromeのWebページ(Ctrl + F5アナログ)を更新するにはどうすればよいですか?


16

4.2.2とChromeブラウザを搭載したNexus 7 Androidデバイスを使用しています。

Ctrl+F5デスクトップのホットキーに類似したWebページのディープリフレッシュを実行するにはどうすればよいですか?

デバイスにメニューボタンがないことに注意してください。

私がここ見つけた唯一の関連する質問によると、解決策はブラウザのキャッシュを完全にクリアすることです。より便利でエレガントなソリューションを希望します。


2
メニューボタン(またはその欠如)はどのように関連していますか?
eldarerathis

@eldarerathis、私はネット上でいくつかの投稿を見ましたが、メニューキーを押しながら更新ツールボタンを押すことを提案しました。
スタン

ああ、面白い。私は前にそれを聞いたことがありませんでした。
eldarerathis

1
この質問には、StackOverflowに関するより良い回答があります(コミュニティの分割が役に立たないことを示します; Androidはプログラミングに十分に近いため、別のサイトを作成する価値はありません;化学vs数学-確かに)
ダンダスカレスク16

回答:


-2

サイトキャッシュごとのバイパス:

これには、キャッシュをバイパスしてブラウザーのキャッシュではなくサーバーからコンテンツを取得するために、アドレスバーで実行する単純なJavaScriptコードが必要です。サーバーから現在のページを強制的にリロードするに関するこのMDNページによると、

javascript:location.reload(true)

ブラウザのアドレスバーに上記のコードを入力し、Enterキーを押します。これにより、ブラウザにキャッシュされている要素を選択するのではなく、サーバーからすべてのコンテンツが取得されます(ブラウザのキャッシュをバイパスします)。

すべてのWebサイトのキャッシュデータをバイパスする(グローバルキャッシュ)

上記のJavaScriptは、現在開いている特定のWebサイトでのみ機能します。すべてのWebサイトキャッシュをクリアするには、グローバルブラウザーキャッシュデータを使用します。あなたはこれを見つけます、

Settings > Privacy > CLEAR BROWSING DATA

[キャッシュ]チェックボックス(および必要に応じてブラウザーデータ、Cookie、パスワードなどの他のオプション)を選択し、[クリア]を選択します。

注: ながらCtrl+はF5、ブラウザのキャッシュを捨てさせると、サーバから新しい内容を要求します、サーバーは無視することができno-cache、ヘッダを、サーバー側のキャッシュされたページを提供しています。したがって、サーバーがno-cacheヘッダーを無視すると、Ctrl+ でもF5古いバージョンのページが返される場合があります。

プライバシーモード:

シークレットモードを参照すると、履歴とキャッシュが無効になります。そのため、シークレットモードを使用して任意のサイトにアクセスし、毎回新しいコンテンツをリクエストできます。


Ctrl+ F5リフレッシュの機能または強制的なリフレッシュの詳細については、

このSO投稿を読んでください。ブラウザの「F5」および「Ctrl + F5」の更新によりどのようなリクエストが生成されますか?



1
閲覧データを消去した後でも、ディープリフレッシュは行われませんでした。私がしなければならなかった殺すとChromeを再起動し、キャッシュから取得することを強制するために、私のAndroid携帯電話に。(後付けとして、ディスク上のキャッシュをクリアした後でも(おそらく)メモリ内のキャッシュはまだ残っているように見えます。Chromeを殺すとメモリキャッシュも消去されます。)[PS:「ディスク」とは、揮発性ストレージ別名フラッシュメモリ。]
ADTC

3

ChromeでブラウジングするSamsungタブレットでは、アドレスバーに次のように入力します。

javascript:location.reload(true)

これにより、Javascriptを使用したハードリロードがトリガーされます。これで、コードの変更の結果を観察するのに何日も待つ必要がなくなりました。そのときの新しい問題は、タブレットで入力するのが私の好きなことではないということです。

上記のコマンドを入力する代わりに、デスクトップモードに切り替えてから戻ろうとしました。それは深くリフレッシュしませんでした。


2

これらのソリューションが機能することはありませんでした。しかし、私は実用的なソリューションを見つけました。

まず、CSS URLを見つけます。私の場合、次のようになりました。

/min/assets/css/style.min.css

アドレスフィールドに書き込みますが、GET変数も追加します。

/min/assets/css/style.min.css?hello

うまくいけば、GET変数が受け入れられます。新しいURLであるため、CSSを強制的に再読み込みします。ここでサイトに戻り、cssをリロードする必要があります。


2

見つけた !!!!!!

URLの左側には、情報アイコン(i)またはロックアイコンがあります。アイコンをクリックしてから、[Webサイト構成]をクリックします。

現在のサイトのキャッシュをクリアするためのゴミ箱アイコン、または「設定の復元」ボタンがあります。

Android Chrome 71での作業。


1
S9 +で動作しない、Chromeビルド73.0.3683.90。私が制御するページで少なくとも15回[クリアとリセット]オプションを選択しました(コードが何をするのかが非常によくわかります)。ただし、ロードしているページで実行されているJSは、まだ古いバージョンです。
SEは、残念ながら再度打つ

1
まあ、それは私のS9で完璧に機能したので、あなたのケースに特有の何かが起こっていると思います!それでさらに略奪してください。
JCM

私は今、2つの異なるデバイスでこれを試しました。1つはデベロッパーモード(私の電話はデベロッパーなので)と友人のモードを使用しています。同様に、私はタブレットで試しました。行きません+。同様に、私はChromeを使用して企業のiPhoneで試しましたが、同じ問題があります。ですから、私の観点からは、複数の欠陥のあるデバイスを自由に使える以上に、あなたは幸運に思えます。
SEが再び残念なことに

もちろん、本当の問題はChrome / Androidのファンキーな振る舞いと超攻撃的なキャッシュです。それは機能しないシークレットモードのようなものです(それといえば...それも適切に機能しませんでした...)
SEストライキ再び残念なことに

iPhoneのChromeにこのオプションがないことを確認しただけなので、同じことは言っていないと思います。AndroidのChromeには「クリアとリセット」はありません。トリプルチェックするには、Xiaomi A1が正常に動作しているという私の提案をテストしました(ページのローカルキャッシュサイズがKBで表示されることに注意してください)。タブを閉じる必要があるかもしれません(またはクロムを強制終了してみてください)。そうでなければ、ある特定のサイトの「ゴミ箱ボタン」が何をするのかと思っています...?
JCM

1

もっとエレガントなソリューションを見つけました。Webページのメニューで、Webサイトのデスクトップバージョンを要求します。サーバーからデータを取得し、ページがリロードされます。その後、再びモバイル版に戻ることができます。


1
すべてのWebサイトがモバイル/デスクトップバージョンを提供しているわけではありません。
エール

1
Android上のChromeの現在のバージョンには、[デスクトップサイトをリクエスト]オプションがあります。すべてのサイトがその要求を受け入れるかどうかにかかわらず、多くの場合、それは依然として効果的なオプションです。これを試してみて、動作しないことを見つけることは、設定でキャッシュをクリアするよりもはるかに簡単で高速です。
フィリップジョーンズ

1

JavaScriptを介して同じオリジンドメインから現在のキャッシュまたはすべてのキャッシュをクリアする方法が必要です。そのため、Webアプリの更新ロールアウトがエラーなしで到着することを確認できます。

また、htmlヘッダーのキャッシュメタタグを一時的に変更することにも成功しませんでした。

デスクトップのみで自動化不可:

ctrl + R

リロードを強制してキャッシュをクリアするために使用されていました。

今、あなたは押す必要があります

ctrl + shift + R
or
shift + F5

クロムがキャッシュのクリアを困難にしたようです。

彼らはおそらく、ブラウザの速度ベンチマークをだましてこれを行っています。VWスタイル。

私はWindows ChromeとAndroid ChromeとChromeで動作する独自の回避策forceReload()関数を書きました:

window.forceReload = function(){
    if( !window.fetch)return document.location.reload( true);
    var els = document.getElementsByTagName( "*");
    for( var i = 0; i < els.length; i++){
        var src = "";
        if( els[i].tagName == "A")continue;
        if( !src && els[i].src)src = els[i].getAttribute( "src");
        if( !src && els[i].href)src = els[i].getAttribute( "href");
        if( !src)continue;
        fetch( src, { cache: "reload"});
    }
    return document.location.reload( true);
};

この関数は、現在のページにロードされたコンテンツのみをリロードします。新しい更新がサーバー上にある後、各クライアントで一度トリガーするか、アプリに動作中の更新ボタンを追加します。


コードを共有してくれてありがとう。Fetchはまだ実験的なAPIのようですが、おそらく別の実験的なCache APIも同様に便利です。
スタン

-1

ページをプルダウンしてリロードすると、スマートフォン用のクロムに組み込まれます。このリンクをチェックして、問題の解決策を見つけたようなトリックを確認してください。


1
この機能は最近Chromeブラウザに追加されましたが(上記のver.41)、古いバージョンでは使用できません。したがって、この機能は動作する場合と動作しない場合があります。さらに重要なことに、これは通常の方法でページをリロードするだけですが、OPはハードリフレッシュを要求します。
ラッキー

必要なソリューションがAndroidまたはコーディングの観点の下にあるかどうかは指定されていません
-fsalazar_sch

1
それが何を意味するのか理解できませんでした。しかし、この答えは、OPの問題の解決策を提供するとは思いません。
ラッキー

この「答え」は、文字通り、ページをプルダウンすることで定期的な更新を実行できることを人々に伝えているだけです。しかし、OPの質問は、PCでCTRL + F5に相当する「ハードリフレッシュ」を行うことでした。
BORT

-3

アクセスしているWebアドレスウィンドウの左側には、ほぼ円形の矢印があります。


1
スタンが求めているように、これが深いリフレッシュになるとは思わない。
dotVezz
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.