ASIHTTPRequest のコードを確認すると、次のセクションが見つかりました
if (![[self requestMethod] isEqualToString:@"GET"]) {
[self setDownloadCache:nil];
}
しかし、私は理由を知りませんか?誰が理由を教えてくれますか?
ASIHTTPRequest のコードを確認すると、次のセクションが見つかりました
if (![[self requestMethod] isEqualToString:@"GET"]) {
[self setDownloadCache:nil];
}
しかし、私は理由を知りませんか?誰が理由を教えてくれますか?
一般に、GET リクエストには副作用がないと考えられています。リクエストが行うことは、レスポンスを生成することだけです (私の記憶が正しければ、これは http 仕様に記述されています)。応答をキャッシュし、それを使用して将来の要求を回避することは完全に安全です。
一方、post、put、delete などの他の http メソッドには一般に副作用があるため、以前の応答を返すだけでは安全ではありません。呼び出し元は副作用に依存している可能性があります (たとえば、行がデータベースに挿入されるなど)。 )。このような状況では、実際にリクエストを行う代わりに、「レコードが作成されたページ」をキャッシュしてキャッシュから表示するだけでは不十分です。