繁体   English   中英

我是否需要为对新 BaseAddress 的后续请求创建一个新的 HttpClient?

[英]Do I need to create a new HttpClient for subsequent requests to new BaseAddress?

以下面为例,我使用单个 httpClient,分配 BaseAddress,然后将其传递给最终将使用它的客户端:

    var httpClient = httpClientFactory.CreateClient("morningstar-api");

    httpClient.BaseAddress = new Uri("http://UniqueAddress_1");
    _mfEODListApi = new RestEase.RestClient(httpClient);

    httpClient.BaseAddress = new Uri("http://UniqueAddress_2");
    _MFListApi = new RestEase.RestClient(httpClient)();

如上所述分配不同的基地址更好,还是我应该为每个创建一个新的 httpClient 并为每个新的 httpClient 提供其唯一的 BaseAddress?

按照上面的模式,我随后发现了一个异常:

解析值时遇到意外字符:<。 路径 '',第 0 行,position 0。

但我不知道这条不幸的毫无意义的消息是由于我配置 httpClient 的方式还是其他完全不相关的原因造成的。

我想更好地了解为调用不同的 BaseAddresses 创建 httpClients 的最佳实践。

根据您的用例, MS 文档为您提供了使用哪种模式的一些想法。

在应用程序中可以通过多种方式使用 IHttpClientFactory:

基本用法

指定客户

类型化的客户

生成的客户

最佳方法取决于应用程序的要求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM