【发布时间】:2016-11-19 18:39:29
【问题描述】:
我已经阅读了很多关于使用 HttpClient 时的最佳实践的信息。大多数人建议在应用程序的整个生命周期内重复使用它,即使它是 IDisposable。
我的网络应用程序正在与各种 API 通信,例如 Facebook Graph API、Twitter API 和 Instagram API。
计划是为与其通信的每个 API 创建一个单独的 HttpClient,这是推荐的,因为这样我可以重用一些标头。
但是现在问题来了,让我们以 Twitter API 为例,每个使用我的 Web 应用程序的用户都有自己的授权标头(用户绑定访问令牌)。我相信这意味着我无法将授权标头设置为 HttpClient 对象的 DefaultRequestHeaders。
在为具有不同授权标头的多个用户重用 HttpClient 时,最佳做法是什么?
我能否为每个请求创建一个HttpRequestMessage 对象并在httpRequestMessage 对象上设置授权标头,而不是将其设置为默认值httpClient.DefaultRequestHeaders.Authorization?
谢谢。
【问题讨论】:
标签: c# asp.net .net httpclient reusability