[英]Addition of BearerToken Authorization Header in DelegatingHandler ASP.NET Web API
为什么如果我在自定义DelegatingHandler中将具有正确令牌的授权标头添加到不带此标头的请求中,却得到响应:需要401授权?
public class ProxyHandler : DelegatingHandler
{
protected async override Task<HttpResponseMessage> SendAsync(
HttpRequestMessage request, CancellationToken cancellationToken)
{
request.Headers.Add("Authorization", "Bearer rightToken...");
return response = await base.SendAsync(request, cancellationToken);
}
}
我找到了答案。 OAuthBearerAuthenticationHandler.cs类中的AuthenticateCoreAsync方法在我的ProxyHandler之前被触发。 在将OAuthBearerAuthenticationOptions中的AuthenticationMode 从Active更改为Passive之后,将触发我的ProxyHandler中的方法base.SendAsync(request,cancellingToken)之后,检查标头中的请求令牌。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.