SignalR net45 дает 401 Несанкционированный на определенных комбинациях пользователь / машина

Недавно мы обновили приложение WPF и все его зависимости NuGet до.NET 4.5.2 и обнаружили, что некоторые пользователи получают неавторизованные ошибки HTTP 401 от SignalR. Используется проверка подлинности Windows через PrincipalUserIdProvider.

Я получаю ошибку 401 при первом подключении POST к SignalR после подключения к SignalR, но есть много причин, почему это странная проблема:

  • Это работает, когда у меня работает Fiddler
  • Это работает, когда я запускаю приложение на Citrix
  • Он работает, когда я запускаю приложение с помощью "Запуск от имени" на ПК другого человека
  • Работает, когда я захожу на чужой компьютер
  • Это работает, когда я запускаю более старую версию клиента, которая находится в.NET 4.0 (все еще подключаясь к тому же серверу)
  • Это работает в QA (но не все?)
  • Это работает, когда кто-то еще использует мой компьютер для запуска приложения

Проблема возникает только для небольшой части комбинаций пользователь / машина, но для этих установок 401 возникает в 100% случаев. Происходит как на Win7, так и на Win8.1 клиенте. На сервере не установлены веб-сокеты.

Любые предложения о том, что может быть проблемой?

1 ответ

Решение

Я понятия не имею, почему, но ссылка на копию net40 клиента DLL SignalR вместо копии net45 решает проблему.

Я удалил ссылку на Microsoft.AspNet.SignalR.Client.dll и прочитал ссылку, используя dll net40 в моей папке пакетов NuGet: Microsoft.AspNet.SignalR.Client.2.2.0\lib\net40\Microsoft.AspNet.SignalR. client.dll

Другие вопросы по тегам