1
キャッシュされた応答のヘッダーを送信する際に問題があります。最大エージング= 100正しくsendedではれる:ここでPlay Framework 2.4 - Java - Httpヘッダーとキャッシュされた応答
は私のルート、
GET /fassets/XXX.js com.AssetController.getFileXXX()
そして、私のコントローラだ、
@Cached(key = XXX, duration = TIMEOUT_SECONDS,)
public Result getFileXXX() {
[...]
final Result result = ok(file).as("application/javascript");
response().setHeader(CACHE_CONTROL, "max-age=100");
return result;
}
問題は最初のリクエスト、キャッシュ制御のためということです。 その他の場合、結果はキャッシュされ、ヘッダーは設定されません。私もこの問題を解決している可能性が何か面白いものを見つけました
Caused by: java.lang.UnsupportedOperationException: null
at java.util.AbstractMap.put(AbstractMap.java:209) ~[na:1.8.0_45]
が、Scalaで:
val result = Ok("Hello World!").withHeaders(CACHE_CONTROL -> "max-age=3600")
は私が
result.headers().put(CACHE_CONTROL, "max-age=10")
しかし、ランタイムエラーにそのリードをしようと試み
お手伝いありがとうございます。
ジュリアン
あなたが望む問題/問題/行動はなんですか? – Castaglia
私は、キャッシュされた応答でキャッシュ制御ヘッダーを送信したいと思っています。 ここでは、ヘッダーを追加せずに@Cachedから応答が送信されます。 私は最後に、注釈の代わりにcache.get/setを使用して問題を解決しました。だから私は毎回ヘッダーを設定することができます。 – Xr17