2017-12-22 20 views
0

私はこれを取得していますなぜ私は混乱しています:特定のAPIルートのキャッシュを防止する - ETag?

GET /api/v1/changelog/json 304 50.967 ms - - 

ブラウザは結果をキャッシュ...しかし、キャッシュされてはいけません。このJSON要求、されるように見えます。

「application/json」ヘッダーを使用するようにヘッダーを変更する必要があると思いますか? それはキャッシュを防止するでしょうか?

しかし、事は、私はすでにそのヘッダを持って、次のとおりです。

 getGitLog: function() { 
     return $http({ 
      method: 'GET', 
      url: `/api/v1/changelog/json`, 
      data: {}, 
      headers: { 
      'Content-Type': 'application/json' 
      }, 
     }) 
    }, 
+0

おそらく関連する問題:https://github.com/expressjs/express/issues/2472 –

答えて

0

のEtagのを無効にすると解決したことが表示されます。 Node.jsのExpressで、それは次のようになります。

app.disable('etag'); 
1

あなたはキャッシュを使用することができます。このような偽のオプション:

getGitLog: function() { 
    return $http({ 
     method: 'GET', 
     url: `/api/v1/changelog/json`, 
     cache: false, 
     data: {}, 
     headers: { 
     'Content-Type': 'application/json' 
     }, 
    }) 
}, 
関連する問題