【ASP.NET Core Web】コントローラーでリクエストヘッダーのX-API-Keyを読み込む

ネコニウム研究所

PCを利用したモノづくりに関連する情報や超個人的なナレッジを掲載するブログ

【ASP.NET Core Web】コントローラーでリクエストヘッダーのX-API-Keyを読み込む

2024-3-12 |

.NET 8のASP.NET Core WebでコントローラーでリクエストヘッダーのX-API-Keyを読み込みたい!

概要

今回の記事では、.NET 8のコントローラーでリクエストヘッダーのX-API-Keyを読み込む手順を掲載する。

仕様書

環境

  • .NET 8.0

手順書

ASP.NET Core WebでコントローラーでリクエストヘッダーのX-API-Keyを読み込む例。

using XssProtectionSample.Mvc.Filters;

namespace XssProtectionSample.Controllers
{
    public class SampleController : Controller
    {
        if (HttpContext.Request.Headers.TryGetValue("X-API-Key", out var apiKey))
        {
            // X-API-Keyを読み込めた場合
            // X-API-Keyの認証などの処理を行う
            string apiKeyValue = apiKey.ToString();
            return Ok("API key: " + apiKeyValue);
        }
        else
        {
            // X-API-Keyを読み込めない場合
            return BadRequest("X-API-Key header is missing!!!!");
        }

        ...
    }
}

メソッドHttpContext.Request.Headers.TryGetValueの第1引数に読み込みたいヘッダーの名前を渡す。今回はX-API-Keyの読み込みを試みてる感じ。

まとめ(感想文)

部分的にAPIKEYを使いたい時に使えるかもね!