C# 如何设置默认标题";“授权”;有价值
我有一个访问RESTAPI端点的HttpClient。对于这个http请求,我必须将头“Authorization”设置为值“ABCDE”。我已经尝试了几种方法,并通过“错误设置HttpHeader:Authorization:”解决了它的错误 第一行错误(Client.DefaultRequestHeaders.Add(“Authorization”,Authorization);): 第二行错误(Client.DefaultRequestHeaders.Authorization=newauthenticationheadervalue(“,Authorization);): 两行代码都在抛出错误。我错过什么了吗 谢谢你的帮助 新罕布什尔州C# 如何设置默认标题";“授权”;有价值,c#,.net,set,authorization,httpclient,C#,.net,Set,Authorization,Httpclient,我有一个访问RESTAPI端点的HttpClient。对于这个http请求,我必须将头“Authorization”设置为值“ABCDE”。我已经尝试了几种方法,并通过“错误设置HttpHeader:Authorization:”解决了它的错误 第一行错误(Client.DefaultRequestHeaders.Add(“Authorization”,Authorization);): 第二行错误(Client.DefaultRequestHeaders.Authorization=newau
我找到了另一种没有验证的方法tryadd。 这个很好用
Client.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", authorization);
试试这个:
httpRequest.Headers.Add("Authorization", "ABCDE");
“两行代码都在抛出错误。”--什么错误?粘贴它们,包括堆栈跟踪。我在代码中使用静态HttpClient。根据我的理解,如果我使用DefaultRequestHeaders,所有httpclient请求都将具有相同的头。如果我同意你的建议,我会为每个请求设置标题。嗨!虽然这可能会提供答案,但通常不鼓励在StackOverflow中只保留代码答案。请解释为什么这是一个解决方案,因为它将帮助OP和未来的访问者。谢谢
public class ImplementedHttpClient : BaseHttpClient
{
public void SetAuthorizationHeader(string authorization)
{
//Client.DefaultRequestHeaders.Add("Authorization", authorization);
Client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("", authorization);
}
public void SetContentType(string contentType)
{
Client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue(contentType));
}
}
Client.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", authorization);
httpRequest.Headers.Add("Authorization", "ABCDE");