我试图将参数添加到信号器的连接中。
我使用Builder创建客户端连接并启动它:
var connection = new HubConnectionBuilder()
.WithUrl("http://10.0.2.162:5002/connection")
.WithConsoleLogger()
.WithMessagePackProtocol()
.WithTransport(TransportType.WebSockets)
.Build();
await connection.StartAsync();
我想在此连接中发送一个简单的参数: 喜欢的东西:
" Token":" 123"
在我的服务器端,我想我可以从HttpContext中获取此参数:
public override Task OnConnectedAsync()
{
var httpContext = Context.Connection.GetHttpContext();
var token = httpContext.Request.Query["Token"];
return base.OnConnectedAsync();
}
有关如何发送此参数的任何想法? 感谢。
答案 0 :(得分:15)
我经过多次研究后发现了如何做到这一点:
在我的构建中,我只是从url连接发送令牌。 像这样:
var connection = new HubConnectionBuilder()
.WithUrl($"http://10.0.2.162:5002/connection?token={token}")
.WithConsoleLogger()
.WithMessagePackProtocol()
.WithTransport(TransportType.WebSockets)
.Build();