1

Firefox 12で、同じURIで異なるリクエストヘッダー(異なる受け入れフィールド)を持つ2つのリソースを連続してリクエストすると、応答は最初のリクエストのキャッシュされた応答になります。最初のリクエストは正しく返されるページのtext/htmlリクエストであり、2番目のリクエストは次のようになります。

要求されたURLは次のとおりです:http:// localhost:8080 / test /次のヘッダー付き:

応答ヘッダー

Content-Type text / html; charset = ISO-8859-1
Date Sun、29 Apr 2012 19:41:53 GMT
Server Apache-Coyote / 1.1

リクエストヘッダー

Accept application / json
Accept-Encoding gzip、deflate
Accept-Language en-us、en; q = 0.5
Connection keep-alive
Cookie JSESSIONID = DB75F9F730D72D040CB5781903B60E87
Host localhost:8080
Referer http:// localhost:8080 / test /
User-Agent Mozilla / 5.0(Windows NT 6.1; WOW64; rv:12.0)Gecko / 20100101 Firefox /12.0X-Requested-XMLHttpRequest付き

この問題を回避するための提案はありますか?前もって感謝します。

4

3 に答える 3

1

サーバーがさまざまな Accept ヘッダーに基づいてさまざまなコンテンツを送信している場合は、「Vary: Accept」を送信して、Accept ヘッダーがキャッシュ キーの一部である必要があることをキャッシュに伝える必要があります。あなたのサーバーはそれをやっていますか?

于 2012-04-30T03:26:27.313 に答える
0

パラメータで使用cache:false$.ajax({...})ます。これにより、クエリ文字列にランダムな値が追加されるため、キャッシュが発生しなくなります。

于 2012-04-29T20:03:28.470 に答える
0

次の行を使用して、jquery を使用して作成されたすべての ajax リクエストに cache false を適用します

$.ajaxSetup({ cache: false });

ajaxSetupのその他のオプション

于 2012-04-29T20:09:11.037 に答える