TokenController.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using Microsoft.AspNetCore.Authorization;
  2. using Microsoft.AspNetCore.Mvc;
  3. using Ropin.Inspection.Api.Common;
  4. using Ropin.Inspection.Api.Common.Token;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Threading.Tasks;
  9. namespace Ropin.Inspection.Api.Controllers
  10. {
  11. [Route("Token")]
  12. public class TokenController : BaseController
  13. {
  14. private readonly ITokenHelper tokenHelper;
  15. public TokenController(ITokenHelper _tokenHelper)
  16. {
  17. tokenHelper = _tokenHelper;
  18. }
  19. [HttpGet]
  20. [AllowAnonymous]
  21. public ApiResult Get()
  22. {
  23. return new ApiResult<Token>(tokenHelper.RefreshToken(Request.HttpContext.User), ReturnCode.Success);
  24. }
  25. [HttpPost]
  26. [AllowAnonymous]
  27. public ApiResult GetByRefreshToken(string refreshToken)
  28. {
  29. if (string.IsNullOrEmpty(refreshToken))
  30. {
  31. return new ApiResult(ReturnCode.TokenError, "RefreshToken无效");
  32. }
  33. return new ApiResult<ComplexToken>(tokenHelper.RefreshToken(refreshToken), ReturnCode.Success);
  34. }
  35. }
  36. }