微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net-core – 我可以在不是ASP.NET Core的.NET.core应用程序中使用HttpClientFactory吗?

我已经阅读了使用HttpClientFactory的热门博客文章 https://www.stevejgordon.co.uk/introduction-to-httpclientfactory-aspnetcore

引用它

A new HttpClientFactory feature is coming in ASP.NET Core 2.1 which helps to solve some common problems that developers may run into when using HttpClient instances to make external web requests from their applications.

所有示例都显示在asp.net应用程序的启动类中连接它,例如

public void ConfigureServices(IServiceCollection services)
{
            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
            services.AddHttpClient();
}

我的问题是你可以在ASP.NET核心之外使用吗?
如果是这样的例子

我会想到很多非Web应用程序(.net核心应用程序)需要进行Web调用,那么为什么这不是.net core api的一部分而不是放入asp.net core api

解决方法

根据 documentation HttpClientFactory是.Net Core 2.1的一部分,所以你不需要ASP.NET来使用它. there描述了一些使用方法.最简单的方法是使用Microsoft.Extensions.DependencyInjection和AddHttpClient扩展方法.

static void Main(string[] args)
{
    var serviceProvider = new ServiceCollection().AddHttpClient().BuildServiceProvider();

    var httpClientFactory = serviceProvider.GetService<IHttpClientFactory>();

    var client = httpClientFactory.CreateClient();
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐