首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SignalR: windows身份验证网站出现“用户身份无法在active SignalR连接期间更改”错误

SignalR: windows身份验证网站出现“用户身份无法在active SignalR连接期间更改”错误
EN

Stack Overflow用户
提问于 2014-07-31 04:48:14
回答 3查看 4.4K关注 0票数 6

我有一个运行signalR 2.1.0的MVC5网站,使用Windows Authentication。因为我使用的是windows,所以登录/注销是由IIS自动处理的。有时,我会收到一个403错误,说“无法识别用户标识。在活动的SignalR连接期间,用户标识无法更改。”这种情况并不总是发生,我似乎找不到一种模式来判断它什么时候起作用,什么时候不起作用。还有没有人遇到过这种情况?

以下是视图上的代码:

代码语言:javascript
运行
复制
<script type="text/javascript">
        $(document).ready(function() {
            SignalRSetup();
        });

        function SignalRSetup() {
            // Declare a proxy to reference the hub.
            var hub = $.connection.tokenRequestHub;

            // Create a function that the hub can call to broadcast messages.
            hub.client.updateFromService = function(tokenRequestID, message, success) {
                var msg = "Token Request ID {0} => {1}".format(tokenRequestID, message);
                var notyType = (success) ? 'success' : 'error';
                noty({ text: msg, type: notyType, timeout: 2000 });
                if (success) {
                    refreshGrids();
                }
            };

            $.connection.hub.start();//this is where it errors!
        }
</script>

任何帮助都将不胜感激。

EN

回答 3

Stack Overflow用户

发布于 2016-04-09 06:32:18

我想我通过向我的Hub类添加一个[Authorize]属性修复了这个问题。虽然只过了几个小时,但我的SignalR页面表现好多了。

票数 5
EN

Stack Overflow用户

发布于 2014-08-29 01:12:27

对我来说起作用的是在IIS设置中禁用匿名身份验证。

票数 3
EN

Stack Overflow用户

发布于 2015-12-02 08:43:31

除了禁用匿名身份验证之外,我发现的另一个解决方案是添加

代码语言:javascript
运行
复制
GlobalHost.HubPipeline.RequireAuthentication();

添加到Startup类中的public void Configuration(IAppBuilder app)方法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25046648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档