我编写了一个自定义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 服务中使用相同的处理程序。这些类型的处理程序是否仍然有效,还是我必须重写它以适应新框架?如果没有,我到底该如何引用它?