32 lines
968 B
C#
32 lines
968 B
C#
// ***********************************************************************
|
|
// <copyright file="HttpContextTokenProvider.cs">
|
|
// Heath
|
|
// </copyright>
|
|
// ***********************************************************************
|
|
|
|
using Microsoft.AspNetCore.Http;
|
|
|
|
namespace Core.Cerberos.External.Helpers.Token
|
|
{
|
|
/// <summary>
|
|
/// Class to return the access token to controllers.
|
|
/// </summary>
|
|
public class HttpContextTokenProvider : ITokenProvider
|
|
{
|
|
private readonly IHttpContextAccessor _httpContextAccessor;
|
|
|
|
public HttpContextTokenProvider(IHttpContextAccessor httpContextAccessor)
|
|
{
|
|
_httpContextAccessor = httpContextAccessor;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Get token from headers.
|
|
/// </summary>
|
|
public string GetToken()
|
|
{
|
|
return _httpContextAccessor.HttpContext?.Request.Headers["Authorization"].FirstOrDefault()?.Split(" ").Last();
|
|
}
|
|
}
|
|
}
|