/// <summary> /// 注册 /// </summary> void IAutoRegister.LateConfigRegist(IServiceCollection services, Microsoft.Extensions.Logging.ILogger logger) { services.AddSingleton <IApiActionChecker, ApiActionChecker>(); //异常处理 services.AddTransient <IMessageMiddleware, ExceptionMiddleware>(); //消息存储与异常消息重新消费 if (ToolsOption.Instance.EnableMessageReConsumer) { services.AddTransient <IMessageMiddleware, StorageMiddleware>(); services.AddTransient <IFlowMiddleware, ReConsumerMiddleware>(); } //第三方回执 if (ToolsOption.Instance.EnableReceipt) { services.AddTransient <IMessageMiddleware, ReceiptMiddleware>(); } //通过反向代理组件处理计划任务消息发送 if (ToolsOption.Instance.EnableReverseProxy) { services.AddSingleton <IMessageMiddleware, ReverseProxyMiddleware>(); } //JWT解析 if (ToolsOption.Instance.EnableJwtToken) { services.TryAddTransient <ITokenResolver, JwtTokenResolver>(); services.AddTransient <IMessageMiddleware, JwtTokenMiddleware>(); } //健康检查 if (ToolsOption.Instance.EnableHealthCheck) { services.AddTransient <IMessageMiddleware, HealthCheckMiddleware>(); } //显示 logger.Information($@" 健康检查 : 启用 异常处理 : 启用 GlobalContext : 启用 JWT令牌解析 : {(ToolsOption.Instance.EnableJwtToken ? "启用" : "关闭")} 反向代理 : {(ToolsOption.Instance.EnableReverseProxy ? "启用" : "关闭")} 消费失败重放 : {(ToolsOption.Instance.EnableMessageReConsumer ? "启用" : "关闭")} 调用回执 : {(ToolsOption.Instance.EnableReceipt ? $"启用({ToolsOption.Instance.ReceiptService}/{ToolsOption.Instance.ReceiptApi})" : "关闭")} "); }