DnsOverHttpsApplicationBuilderExtensions.cs 723 B

1234567891011121314151617181920212223
  1. using FastGithub.Dns;
  2. using Microsoft.AspNetCore.Builder;
  3. using Microsoft.Extensions.DependencyInjection;
  4. namespace FastGithub
  5. {
  6. /// <summary>
  7. /// DoH的中间件扩展
  8. /// </summary>
  9. public static class DnsOverHttpsApplicationBuilderExtensions
  10. {
  11. /// <summary>
  12. /// 使用DoH的中间件
  13. /// </summary>
  14. /// <param name="app"></param>
  15. /// <returns></returns>
  16. public static IApplicationBuilder UseDnsOverHttps(this IApplicationBuilder app)
  17. {
  18. var middleware = app.ApplicationServices.GetRequiredService<DnsOverHttpsMiddleware>();
  19. return app.Use(next => context => middleware.InvokeAsync(context, next));
  20. }
  21. }
  22. }