我编写了一个自定义DelegatingHandler
来拦截请求并根据API密钥对其进行身份验证。这是在ASP.NET 5之前的WebApi服务中使用的。
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
{
var apiKey = string.Empty; //ConfigurationManager.AppSettings.Get("apiKey");
if (request.Headers.GetValues("Auth").FirstOrDefault() == apiKey)
return base.SendAsync(request, cancellationToken);
var error = new HttpError("Unauthorized.");
var response = request.CreateErrorResponse(HttpStatusCode.Unauthorized, error);
return Task.FromResult(response);
}
我需要能够在新的ASP.NET 5 WebApi服务中使用相同的处理程序。这些类型的处理程序是否仍然有用或者我必须重写它以适应新的框架?如果没有,我在地球上如何引用它?