因为SignalRCore支持websocket支持,因此希望在H5游戏中加以引入使用。官方的文档介绍过于繁琐了,经过试验,采取以下步骤:
1.创建dotnet web空工程:dotnet new web
2.从示例中拿出signalr.js,signalr.min.js放入H5游戏客户端的lib文件夹中,并在index.html中加以引用;
3.服务器工程按官方文档编写好范例代码;
4.H5游戏客户端加入测试代码:
var connection = new signalR.HubConnectionBuilder().withUrl("http://localhost:5000/chatHub").build(); // withUrl中可以指定要连接的服务器地址
connection.on("ReceiveMessage", function (user, message) { // 注意"ReceiveMessage"与服务器的RPC目标方法名要保持一致
console.log("(__GameManagerLoad__)message:" + message);
});
// 优先使用webSockets选项
connection.start({ transport: ['webSockets', 'longPolling'] }).then(function() {
// 准备好后向服务器发送消息,注意方法名要与服务端的接收方法名保持一致
connection.invoke("SendMessage", "Jack", "Hello, SignalR");
}).catch(function (err) {
console.log(err.toString());
});