2017-01-23 10 views
2

HttpClientのキャッシュを設定する方法はありますか? HttpClientレスポンス(getメソッドでエンドポイントに到達しています)を取得したいのですが、クライアントデバイスにインターネット接続がない場合、この特定のコールの最後の応答を返したいと思います。インターネット接続がある場合、HttpClientはこの呼び出しに対するこの新しい応答によって応答(通常の動作)を取得し、キャッシュを更新します。System.Net.Http.HttpClientキャッシュ

クロスプレートフォームのXamarinフォームプロジェクトでこの動作を設定する方法はありますか?

答えて

0

あなたはこれらのAkavacheのいずれかの方法に有用見つけることがあります。

// Attempt to return an object from the cache. If the item doesn't 
// exist or returns an error, call a Func to return the latest 
// version of an object and insert the result in the cache. 
IObservable<T> GetOrFetchObject<T>(string key, Func<Task<T>> fetchFunc, DateTimeOffset? absoluteExpiration = null); 

// Like GetOrFetchObject, but isn't async 
IObservable<T> GetOrCreateObject<T>(string key, Func<T> fetchFunc, DateTimeOffset? absoluteExpiration = null); 

// Immediately return a cached version of an object if available, but *always* 
// also execute fetchFunc to retrieve the latest version of an object. 
IObservable<T> GetAndFetchLatest<T>(string key, 
    Func<Task<T>> fetchFunc, 
    Func<DateTimeOffset, bool> fetchPredicate = null, 
    DateTimeOffset? absoluteExpiration = null); 
関連する問題