如何在c#httpClient中重置设置?

如何在c#httpClient中重置设置?,c#,http,C#,Http,在c#中,我发出get和post请求。这是我的密码 得到 因为我经常提出很多要求。但是,如果我重新使用该对象,像头这样的设置将保持不变,从而导致问题。有没有一种方法可以重置设置,但保留对象 谢谢不要使用HttpClient的默认头。设置请求的标题: var content = new StringContent(postData, Encoding.UTF8, content_type) // CONTENT-TYPE header content.Headers.Accept.Add(new

在c#中,我发出get和post请求。这是我的密码

得到

因为我经常提出很多要求。但是,如果我重新使用该对象,像头这样的设置将保持不变,从而导致问题。有没有一种方法可以重置设置,但保留对象


谢谢不要使用HttpClient的默认头。设置请求的标题:

var content = new StringContent(postData, Encoding.UTF8, content_type) // CONTENT-TYPE header
content.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue(accept)); // ACCEPT header
if (token != null) 
    content.Headers.Authorization = new AuthenticationHeaderValue(token.token_type, token.access_token);

然后,所有线程都可以在应用程序的整个运行时使用相同的HttpClient,而不会出现问题。

不要使用HttpClient的默认头。设置请求的标题:

var content = new StringContent(postData, Encoding.UTF8, content_type) // CONTENT-TYPE header
content.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue(accept)); // ACCEPT header
if (token != null) 
    content.Headers.Authorization = new AuthenticationHeaderValue(token.token_type, token.access_token);

然后,所有线程都可以在应用程序的整个运行期间使用相同的HttpClient,而不会出现问题。

您可以将头添加到请求对象,而不是将它们放在客户端的默认请求头中。我认为,如果您需要一个空白列表,可以实例化一个新实例。你只是不想无缘无故地为每一个请求创建一个新的。我认为它不会让你在发出请求后编辑客户端的属性。不相关,但是为什么你要将
async
/
await
与同步代码(如
client.GetAsync(uri).Result
)混合使用asp.net core,您可以看看如何使用。您可以将头添加到请求对象中,而不是将它们放在客户端的默认请求头中。我认为,如果您需要一个空白列表,可以实例化一个新实例。你只是不想无缘无故地为每一个请求创建一个新的。我认为它不会让你在发出请求后编辑客户端的属性。不相关,但是为什么你要将
async
/
await
与同步代码(如
client.GetAsync(uri).Result
)混合使用asp.net core,您可以看看如何使用。我将如何做到这一点,但仍然保持异步。我更新了上面的代码。你能编辑你的代码来处理它吗?@omega Headers在你编辑后现在在内容对象上。我该怎么做,但仍然保持它的异步。我更新了上面的代码。你能编辑你的代码来处理它吗?@omega Headers现在在你编辑后的内容对象上。
private static HttpClient client = new HttpClient();
var content = new StringContent(postData, Encoding.UTF8, content_type) // CONTENT-TYPE header
content.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue(accept)); // ACCEPT header
if (token != null) 
    content.Headers.Authorization = new AuthenticationHeaderValue(token.token_type, token.access_token);