我正在一个MVC5 ASP.NET项目中工作,了解到在控制器中向WEB API发送经过身份验证的请求,可以通过以下方式将令牌添加到标头(使用示例代码):
public static class APICaller
{
// Use a single instance for HttpClient to reduce overhead
private static readonly HttpClient client = new HttpClient();
//Set the Authorization Header
public static string SetHeader( string token )
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
return("Success");
}
}
这种方式在HttpClient上设置标头是否线程安全?鉴于只有一个HttpClient实例,其他用户是否有访问此相同令牌的方法?
编辑:
我想再问一个问题以更好地了解它是如何工作的。每次使用相同的HttpClient对象进行请求时,我需要添加标头吗?