問題タブ [sw-toolbox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
progressive-web-apps - WorkboxSW コンストラクターが未定義のエラーをスローする
Service Worker ファイルでは、次のコードを使用しています。
しかし、エラーが発生しているUncaught ReferenceError: WorkboxSW is not defined
ため、Service Worker が登録されていません。
asp.net-mvc - Asp.NET PWA 偽造防止トークンがキャッシュされないようにするにはどうすればよいですか?
sw-toolboxを使用してリソースのキャッシュを管理するプログレッシブ Web アプリケーションがあります。
ログイン ページ (/user/login?returnurl=xxxx) には偽造防止トークンが必要なので、ページ コンテンツのキャッシュ バージョンが返されないように、sw-toolbox ルーターを次のように構成しました。
toolbox.router.any("/user/*", toolbox.networkOnlyCustom);
ここで、このnetworkOnlyCustom
メソッドはnetworkOnly
組み込みメソッドを警告付きで使用して、ユーザーがオフラインの場合にキャッシュされた「申し訳ありませんが、オフラインです」ページを返します (以下を参照)。
ただし、「偽造防止 Cookie トークンとフォーム フィールド トークンが一致しません」というエラーが頻繁に表示されます。いつもではありませんが!実際、ユーザーがそのエラーを見て、ブラウザの [戻る] をクリックしてフォームを再度送信すると、問題なくログインできます。
この理由は、ブラウザ (私の場合は Chrome 71) がログインページをキャッシュしているためだと思いました。そこで、ブラウザーが従うことを期待して、次の HTTP 応答ヘッダーを追加しました。
しかし、これは私の問題を解決していません。どんなアイデアでも大歓迎です!