ASP.Net Core OpenAPI生成的HttpClient无法注入。
创始人
2024-09-15 10:00:47
0

在ASP.NET Core项目中,可以使用Swashbuckle.AspNetCore库来生成OpenAPI规范的文档,并且可以使用Swagger UI来浏览和测试API。当使用OpenAPI生成的HttpClient时,可以通过以下步骤解决无法注入的问题:

  1. 首先,确保已经在ASP.NET Core项目中安装了Swashbuckle.AspNetCore库。可以在.csproj文件中添加以下NuGet包引用:

  

  1. 在Startup.cs文件的ConfigureServices方法中,添加Swagger生成器的配置。在这里,我们使用AddSwaggerGen方法来配置Swagger生成器。
using Microsoft.OpenApi.Models;

public void ConfigureServices(IServiceCollection services)
{
    // ...其他服务配置
    
    services.AddSwaggerGen(c =>
    {
        c.SwaggerDoc("v1", new OpenApiInfo { Title = "API", Version = "v1" });

        // 如果生成的HttpClient是通过接口定义的
        c.GeneratePolymorphicSchemas();

        // 如果生成的HttpClient是通过具体类型定义的
        // c.GeneratePolymorphicSchemas();
    });
    
    // ...其他服务配置
}
  1. 在Startup.cs文件的Configure方法中,添加Swagger UI的配置。在这里,我们使用UseSwaggerUI方法来启用Swagger UI。
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    // ...其他配置
    
    app.UseSwagger();
    app.UseSwaggerUI(c =>
    {
        c.SwaggerEndpoint("/swagger/v1/swagger.json", "API v1");
    });
    
    // ...其他配置
}
  1. 在需要使用自动生成的HttpClient的地方,通过构造函数注入HttpClient实例。在这里,我们使用HttpClientFactory来创建HttpClient实例。
using System.Net.Http;

public class MyController : ControllerBase
{
    private readonly HttpClient _httpClient;

    public MyController(HttpClient httpClient)
    {
        _httpClient = httpClient;
    }

    // ...其他控制器方法
}

通过以上步骤,就可以在ASP.NET Core项目中成功注入由OpenAPI生成的HttpClient实例,并且可以使用Swagger UI来测试API。

相关内容

热门资讯

9免费!贵阳手机天天麻将app... 1、9免费!贵阳手机天天麻将app辅牌器购买(透视)太坑了其实真的有挂(有挂分享)-哔哩哔哩;该软件...
第9个代打!德扑软件开发(人工... 第9个代打!德扑软件开发(人工智能软件)辅助透视(有挂教程)-哔哩哔哩;wpk透视辅助官方版是专为公...
第6打法(微扑克ai代打)外挂... 第6打法(微扑克ai代打)外挂透明挂辅助工具(辅助挂)细节方法(发现有挂)-哔哩哔哩;微扑克ai代打...
第1个线上!wpk透视辅助可测... 第1个线上!wpk透视辅助可测试真的(微扑克俱乐部)原来真的有挂(发现有挂)-哔哩哔哩;亲,其实确实...
6口控制!心悦辅助神器安卓版(... 1、6口控制!心悦辅助神器安卓版(透视)太坑了原来真的有挂(果真有挂)-哔哩哔哩;详细教程。2、心悦...
三个系统规律!德扑之星软件透明... 1、三个系统规律!德扑之星软件透明有人买(开房间教程)透视辅助(有挂方略)-哔哩哔哩;详细教程。2、...
4ai插件(来玩app)外挂透... 4ai插件(来玩app)外挂透明挂辅助APP(透视)介绍教程(有挂方法)-哔哩哔哩来玩app平台为新...
第七个合作!wpk ai检测(... 第七个合作!wpk ai检测(wepoke智能ai)其实真的有挂(真的有挂)-哔哩哔哩;精心打造了俱...
第一最新!闽游十三水辅助器是什... 第一最新!闽游十三水辅助器是什么样的(透视)太坑了其实真的有挂(确实有挂)-哔哩哔哩1、超多福利:超...
五机器人(wpk德州俱乐部)外... 五机器人(wpk德州俱乐部)外挂透明挂辅助工具(透视)力荐教程(有挂讲解)-哔哩哔哩;1分钟了解详细...