Как направить запрос API .NET core к определенному методу контроллера?
Я хотел бы сгруппировать свои действия API в небольшой набор контроллеров, чтобы, например, мой KeyContoller имел запросы get для токена JWT и для открытого ключа API. Документация, которую я читал до сих пор, похоже, не допускает такого уровня детализации и предлагает отдельные контроллеры.
Что я уже пробовал:
На данный момент я могу обойтись, потому что сигнатуры методов разные, но я не доволен этим. Это код контроллера:
using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; namespace CMDS.Controllers { [Route("CMDS/[controller]")] [ApiController] public class KeyController : ControllerBase { [HttpGet] public IActionResult GetPublicKey() { object returnData; returnData = "CMDS Public Key"; return Ok(returnData); } [HttpGet("{AuthString}")] public IActionResult GetJWTToken(string AuthString) { object returnData; returnData = "JWT Token"; return Ok(returnData); } } }
Вот примеры вызовов, попадающих в каждый метод:
для GetPublicKey
Invoke-RestMethod http://localhost:5000/CMDS/Key
для GetJWTToken
Invoke-RestMethod http://localhost:5000/CMDS/Key/"dDSD"