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。

相关内容

热门资讯

微扑克ai机器人!微扑克辅助真... 微扑克ai机器人!微扑克辅助真的,(wPk)从来是真的有挂(详细透视黑科技教程)关于微扑克ai机器人...
透视规律(德扑之星ai代打)德... 透视规律(德扑之星ai代打)德扑之星专业代打(详细辅助黑科技教程)总是存在有挂,您好,这款游戏可以开...
德扑ai助手!wepoke系统... 德扑ai助手!wepoke系统,(WePoKer)从前是有挂(详细辅助曝光教程);建议优先通过德扑a...
透视神器(wepoke真的有挂... 透视神器(wepoke真的有挂)wepoke软件(详细辅助专业教程)原生是真的有挂;一、AI软件牌型...
wepoke辅助!德扑之星操作... wepoke辅助!德扑之星操作,(AAPOkER)确实真的是有挂(详细辅助教你教程);人气非常高,a...
辅助透视(微扑克辅助挂)哈糖大... 辅助透视(微扑克辅助挂)哈糖大菠萝有外挂吗(详细辅助透明教程)一贯有挂1、快速入门:当你通过点击开始...
wpk辅助挂!wepoke打伙... wpk辅助挂!wepoke打伙牌,(德扑)本然真的是有挂(详细辅助扑克教程);wpk辅助挂黑科技是一...
透视美元局(wepoke智能a... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加Q群【1067239143】很多玩家在这款游戏中打...
德州ai辅助软件!wepok软... 德州ai辅助软件!wepok软件透明挂,(aapOKER)起初有挂(详细辅助扑克教程)1、玩家可以在...
透视美元局(德扑ai智能)微扑... 透视美元局(德扑ai智能)微扑克大厅机器人(详细辅助我来教教你)固有存在有挂1、每个玩家都可以进行使...