Использование ajaxSetup beforeSend для Basic Auth разрывает соединение SignalR

У меня есть WebApi, защищенный с помощью Basic Auth, который применяется ко всему API с помощью AuthorizationFilterAttribute. У меня также есть концентраторы SignalR, установленные на нескольких моих контроллерах Api.

Наряду с этим у меня есть веб-страница, которая использует мой WebApi. Веб-страница в основном написана на Backbone, поэтому для звонков на мой защищенный WebApi я добавил следующий jquery

$.ajaxSetup({
    beforeSend: function (jqXHR, settings) {
        jqXHR.setRequestHeader('Authorization', 'Basic ' + Token);
        return true;
    }
});

Это работает для связи с моими контроллерами Api, но добавление приведенного выше кода разорвало соединение с моими концентраторами SignalR, а именно:

XMLHttpRequest cannot load http://localhost:50000/signalr/negotiate?_=1366795855194. 
Request header field Authorization is not allowed by Access-Control-Allow-Headers. 

УдалениеjqXHR.setRequestHeader() линия восстанавливает соединение с SignalR Hub, но прерывает вызовы Api.

Учитывая вышесказанное, я мог бы сделать что-то хакерское и установить заголовок запроса только в том случае, если запрос сделан неТ / сигналер, но это просто грязно ...

Есть ли более чистый способ обойти это?

Я просто делаю что-то глупое? Кто-нибудь еще сталкивался с этим?

Ответы на вопрос(2)

Ваш ответ на вопрос