diff --git a/src/NzbDrone.Api/Authentication/EnableStatelessAuthInNancy.cs b/src/NzbDrone.Api/Authentication/EnableStatelessAuthInNancy.cs index 82ace5314..34d59ad94 100644 --- a/src/NzbDrone.Api/Authentication/EnableStatelessAuthInNancy.cs +++ b/src/NzbDrone.Api/Authentication/EnableStatelessAuthInNancy.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using Nancy; using Nancy.Bootstrapper; using NzbDrone.Api.Extensions; @@ -33,7 +34,9 @@ namespace NzbDrone.Api.Authentication return response; } - var apiKey = context.Request.Headers.Authorization; + var authorizationHeader = context.Request.Headers.Authorization; + var apiKeyHeader = context.Request.Headers["X-Api-Key"].FirstOrDefault(); + var apiKey = String.IsNullOrWhiteSpace(apiKeyHeader) ? authorizationHeader : apiKeyHeader; if (context.Request.IsApiRequest() && !ValidApiKey(apiKey) && !_authenticationService.IsAuthenticated(context)) { diff --git a/src/UI/Mixins/jquery.ajax.js b/src/UI/Mixins/jquery.ajax.js index 0fe0b047f..5105d8ae8 100644 --- a/src/UI/Mixins/jquery.ajax.js +++ b/src/UI/Mixins/jquery.ajax.js @@ -25,7 +25,7 @@ define( if (xhr) { xhr.headers = xhr.headers || {}; - xhr.headers.Authorization = window.NzbDrone.ApiKey; + xhr.headers['X-Api-Key'] = window.NzbDrone.ApiKey; } return original.apply(this, arguments);