2017-03-02 9 views
1

私のアプリケーションには削除登録機能があります。そこでは、ユーザーを削除するためにサーバーに要求を送信する必要があります。もちろん、デバイスからすべてのローカルデータを削除する必要があります。リクエストとストレージのクリアは正しく行われましたが、同じユーザーに再度登録した後も前のセッションのデータがページに表示されました。Angular2のhttpキャッシュを無効または空にする

これはhttpサービスキャッシュによって発生したようですが、登録を削除した後にexitApp()を呼び出すと、以前のregのデータが正しく表示されません。ただし、exitAppはiOSでは動作しません。

これは2in1の質問です。申し訳ありません。

だから、以前のキャッシュされたリクエストがすべて削除されるようにhttpサービスに指示するにはどうすればよいですか? または、iOSのアプリに完全に終了するように指示するにはどうすればよいですか?

+0

はあなたに、これは、HTTPのキャッシュとキャッシュされていないイオンページでよろしいですか?確認するには、ネットワークタブのクロムインスペクタを使用して、サーバーへのリクエストが完了したことを確認します。 – e666

+0

@ e666あなたは正しいかもしれません。なぜなら、ネットワークタブでは、サーバーから戻ってくるデータがないからです。しかし、私はionViewDidEnterでローカルに作業しているページのリストをクリアします。ページキャッシュをクリアするにはどうしたらいいですか? – Perrier

+1

Internet Explorer(Internet Explorer)でAngular2 http要求のキャッシュを防止するための[適切な方法]の可能な複製(http://stackoverflow.com/questions/36500804/proper-way-to-prevent-angular2-http-request-caching-in -internet-explorer-ie) – estus

答えて

1

setRootメソッドを使用して、ログイン画面に移動するときにDOMキャッシュをクリアする必要があります。

例:

deleteAccount() { 
    this.navCtrl.setRoot(LoginPage); 
} 

は、イオンのドキュメントによると:彼らは出射(からまだナビゲーションスタックに離れてナビゲートされている場合、デフォルトで

、ページがDOMにキャッシュされ、残っています例えばpush()のページ)。それらは、ナビゲーションスタック(pop()またはsetRoot())上で削除されたときに破棄されます。

詳細はこちらをご覧ください:https://ionicframework.com/docs/v2/api/navigation/NavController/

+1

私は既にsetRootを使用していますので、私の問題は他のものでなければなりません。 – Perrier

関連する問題