2017-07-25 46 views
3

我通過郵遞員發送帶有「If-None-Match」標頭的請求,但在控制器中始終爲null在asp.net核心控制器中,如果-None-Match標頭始終爲空

我正在使用Asp.net核心1.1。

我的代碼有什麼問題嗎?

enter image description here 調試 enter image description here 代碼

if (Request.Headers.ContainsKey("If-None-Match")) 
{ 
    var oldETag = Request.Headers["If-None-Match"].First(); 
    if (cache.Get($"Tenant-{id}-{oldETag}") != null) 
    { 
     return StatusCode((int)HttpStatusCode.NotModified); 
    } 
} 

UPDATE 1

製作同時擁有If-Match & If-None-Match報頭中的新的請求,但只If-Match頭在控制器If-None-Match仍然null存在。 enter image description here enter image description here

回答

0
  • 你看看在調試器中錯誤的頭。取而代之的是HeaderIfMatch檢查HeaderIfNoneMatch

  • Request.Headers.ContainsKey("If-None-Match") - 此代碼是好的,並通過郵遞員爲我工作。但是,相應地截圖,看起來像添加If-None-Match作爲查詢參數,而不是標題。

+0

- HeaderIfNoneMatch也爲空。在postman中,我在header選項卡中添加了值,所以它不是查詢字符串。 –

相關問題