は、これは...私が遭遇してきた奇妙なことの一つであるようになってalamofireネットワークリクエストがメモリに保存されていますか?
manager.request(PostRouter.readPosts(pn: pn)).validate().responseJSON {
response in
switch response.result {
case .success(let json):
if let json = json as? JSON,
let postsArray = json["posts"] as? [JSON],
let posts = Post.build(from: postsArray) {
completion(posts, nil)
}
else {
completion(nil, NetworkingError.jsonParsingError)
}
case .failure(let error):
completion(nil, error)
}
}
同じものを使用して
シンプルなネットワーク要求は、シミュレータや携帯から実行しているかどうか起こりました。
- 飛行機モードでリクエストしてください - >インターネットに接続できないというエラーです。
- インターネットで再びメイクリクエスト - >ロードの記事
- は機内モードで再要求を行う - >負荷の記事インターネットなし。 json値の成功例を返します。
手順3で私はインターネット接続でリクエストを行い、手順2と手順3の間でデータの値を変更しても、新しいデータをフェッチするのではなく、手順2のデータと同じデータが返されます。これは、データがメモリに保存されることを含め、要求全体にほぼ似ています。
実際に新しいデータを取得する唯一の方法は、電話から削除してもう一度インストールすることです。問題はそれから繰り返されます。
これは、私がアプリケーションから行ったすべてのリクエストに発生します。また、Alamofireにリンクされていない問題は、それでも問題が発生するためです。
おそらく 'URLCache'に関連しています –
おそらく問題ではなく機能です。レスポンスのキャッシュヘッダーを確認しましたか? – clemens
私は 'cachePolicy'を' reloadIgnoringCacheData'に設定しましたが、何の違いもありませんでした。 – luke