using DealerSelection.Api.Interface; using DealerSelection.Api.Models; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Swashbuckle.AspNetCore.Annotations; namespace BajajAutoBooking.WebApi.Controllers { [ApiController] [Route("jwtauth")] public class JWTAuthController : ControllerBase { private readonly ILogger _logger; private IJwtTokenApi Api { get; } public JWTAuthController(IJwtTokenApi api, ILogger logger) { Api = api; _logger = logger; } /// /// GetAuthToken /// /// /// [AllowAnonymous] [HttpPost] [SwaggerOperation(Tags = new[] { "JWTAuth" })] [Route("gettoken")] public async Task> GetAuthToken(AuthValidateModel userLogin) { string token = await Api.GenerateToken(userLogin); return token; } [HttpPost] [Route("IsValid")] public async Task> IsValid(TokenModel request) { TokenValidProperty tokenValid = await Api.IsTokenExpired(request.Token); return tokenValid; } } }