SignalR客户端启动连接时如何设置用户? [英] SignalR Client How to Set user when start connection?

查看:26
本文介绍了SignalR客户端启动连接时如何设置用户?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

服务器端:

public override Task OnConnected()
{
    var connectionId = Context.ConnectionId;
    var user = Context.User.Identity.Name; // Context.User is NULL
    return base.OnConnected();
}

客户端(控制台项目中):

IHubProxy _hub;
string url = @"http://localhost:8080/";
var connection = new HubConnection(url);
_hub = connection.CreateHubProxy("TestHub");
connection.Start().Wait();

当客户端连接到服务器时,我想知道username和connectionId之间的映射,但是Context.User为空。如何在客户端设置此值?

推荐答案

使用查询字符串传递您的用户名。

客户端

第一个设置查询字符串

string url = @"http://localhost:8080/";
var connection = new HubConnection(url);
_hub = connection.CreateHubProxy("TestHub");
connection.qs = { 'username' : 'anik' };
connection.Start().Wait();

服务器

public override Task OnConnected()
{
    var username= Context.QueryString['username'];
    return base.OnConnected();
}

这篇关于SignalR客户端启动连接时如何设置用户?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆