You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

66 lines
2.2 KiB

using Microsoft.Extensions.Configuration;
using Shentun.Utilities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Shentun.WebApi.Service
{
/// <summary>
/// Jwt配置
/// </summary>
public class JwtConfig
{
private readonly IConfigurationSection _configSection;
public JwtConfig()
{
var builder = new ConfigurationBuilder().SetBasePath(DirectoryHelper.GetAppDirectory()).AddJsonFile("appsettings.json");
var configuration = builder.Build();
_configSection = configuration.GetSection("Jwt");
}
public JwtConfig(IConfiguration configuration)
{
_configSection = configuration.GetSection("Jwt");
}
public string Issuer => _configSection.GetValue("Issuer", "Shentun");
public string Audience => _configSection.GetValue("Audience", "MyAudience");
/// <summary>
/// 安全密钥
/// </summary>
public string SecurityKey => _configSection.GetValue("SecurityKey", "Shentun!@##%^^8735");
/// <summary>
/// Web端过期时间
/// </summary>
public double WebExpiration => _configSection.GetValue<double>("WebExpiration", 30);
/// <summary>
/// 移动端过期时间
/// </summary>
public double MobileExpiration => _configSection.GetValue<double>("MobileExpiration", 30);
/// <summary>
/// 小程序过期时间
/// </summary>
public double MiniExpiration => _configSection.GetValue<double>("MiniExpiration", 30);
/// <summary>
/// 自助机程序过期时间
/// </summary>
public double SelfMachineExpiration => _configSection.GetValue<double>("SelfMachineExpiration", 30);
/// <summary>
/// 桌面程序过期时间
/// </summary>
public double DesktopExpiration => _configSection.GetValue<double>("DesktopExpiration", 30);
/// <summary>
/// 其他端过期时间
/// </summary>
public double OtherExpiration => _configSection.GetValue<double>("OtherExpiration", 1);
}
}