新增全局异常捕获
This commit is contained in:
@@ -1,5 +1,10 @@
|
||||
using Apimanager_backend.Services;
|
||||
using Microsoft.AspNetCore.Authentication.JwtBearer;
|
||||
using Microsoft.IdentityModel.Tokens;
|
||||
using StackExchange.Redis;
|
||||
using System.ComponentModel;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Text;
|
||||
|
||||
namespace Apimanager_backend.Config
|
||||
{
|
||||
@@ -8,7 +13,35 @@ namespace Apimanager_backend.Config
|
||||
public static IServiceCollection AddAllService(this IServiceCollection services,IConfiguration configuration)
|
||||
{
|
||||
services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());
|
||||
services.AddJWTService(configuration);
|
||||
services.AddScoped<IUserService, UserService>();
|
||||
services.AddScoped<IAuthService, AuthService>();
|
||||
services.AddSingleton<ITokenService, TokenService>();
|
||||
services.AddSingleton<IRefreshTokenService, RefreshTokenService>();
|
||||
return services;
|
||||
}
|
||||
public static IServiceCollection AddJWTService(this IServiceCollection services,IConfiguration configuration)
|
||||
{
|
||||
var jwtSettings = configuration.GetSection("JwtSettings");
|
||||
var key = Encoding.ASCII.GetBytes(jwtSettings["Secret"]);
|
||||
// JWT配置
|
||||
services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
|
||||
.AddJwtBearer(options =>
|
||||
{
|
||||
options.TokenValidationParameters = new TokenValidationParameters
|
||||
{
|
||||
ValidateIssuer = true,
|
||||
ValidateAudience = true,
|
||||
ValidateLifetime = true,
|
||||
ValidateIssuerSigningKey = true,
|
||||
ValidIssuer = jwtSettings["Issuer"],
|
||||
ValidAudience = jwtSettings["Audience"],
|
||||
IssuerSigningKey = new SymmetricSecurityKey(key)
|
||||
};
|
||||
});
|
||||
|
||||
//redis配置
|
||||
services.AddSingleton<IConnectionMultiplexer>(ConnectionMultiplexer.Connect(configuration["Redis:ConnectionString"]));
|
||||
return services;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user