使用统一容器在服务层(应用程序的第二层)中创建HttpClient

时间:2019-04-22 15:55:27

标签: c# asp.net-web-api2 dotnet-httpclient

我们的客户提供了一个使用Web API的库。 我已经使用统一容器注册了提供的API接口:

container.RegisterType<IApiClient, ApiClient>(new InjectionConstructor(apiClientOptionsModel))

用于创建用户的Web API类(ApiClient)接受需要输入一定数量的模型(apiClientOptionsModel),该模型还包括HttpClient。 现在,模型值会在运行时更改。例如,当插入一个新用户时,我需要在HttpClient的Authorization标头中发送一个Authorization令牌。我无法在统一容器中对其进行硬编码,因为我是在运行时从UI上获得此类信息的。

当调试器击中用户服务时,我已完成所有设置。我还从UI层提供了Authorization令牌,但是由于ApiClient没有任何此类选项,因此无法在请求标头中设置此Authorization令牌。

如果我在用户服务处创建API客户端,则可以这样做,但这不是一个好习惯。请引导我。

0 个答案:

没有答案