【发布时间】:2017-05-17 19:50:59
【问题描述】:
我的班级有一个私人HttpClient。我有一个DoRequest 方法来处理我的所有请求并为内容/参数获取一个模板对象。到目前为止,我有 2 个电话。一种是检索令牌,一种是获取其他信息(GetInfo)。我的GetInfo 方法需要设置授权标头,所以我在调用DoRequest 之前执行此操作:
this.Client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
当我开始为负载测试执行Parallel.For 时,有时我会开始收到An item with the same key has already been added 异常。现在我知道标题存储在字典中,这就是为什么我得到异常但我正在寻找如何解决这个问题的想法,同时保留我的 DoRequest 设计。我想解决它的一种方法是在我的HttpContent 对象中设置标题,但它存在于我的DoRequest 方法中,我现在需要向它传递一个 Token 参数。我并不是说这是世界上最糟糕的事情,但我正在寻找替代品,如果有的话。
【问题讨论】:
标签: c# api http-headers token httpclient