介绍一下SignalR
ASP .NET SignalR 是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信。什么是实时通信的Web呢?就是让客户端(Web页面)和服务器端可以互相通知消息及调用方法,当然这是实时操作的。
WebSockets是HTML5提供的新的API,可以在Web网页与服务器端间建立Socket连接,当WebSockets可用时(即浏览器支持Html5)SignalR使用WebSockets,当不支持时SignalR将使用其它技术来保证达到相同效果。
SignalR当然也提供了非常简单易用的高阶API,使服务器端可以单个或批量调用客户端上的JavaScript函数,并且非常 方便地进行连接管理,例如客户端连接到服务器端,或断开连接,客户端分组,以及客户端授权,使用SignalR都非常 容易实现。
重点
想要前端实现获取端口的数据,就需要跟后端交流清楚,后端使用什么写的,才能更容易配合,方向首先要走合适
那么接下来就用代码来展示通过SignalR获取数据
//引入这两个包
import '@/utils/jquery.min'
import '@/utils/jquery.signalR'
data(){
return {
value: "",
showmsg: "222",
proxy: {}
}
},
mounted(){
var $this = this;
$this.connectServer();
},
methods:{
connectServer() {
var $this = this;
var conn = $.hubConnection("http://localhost:111)")//连接 是获取的后端接口 线上线下都可以
$this.proxy = conn.createHubProxy("StationHub");
$this.getMsg();
conn.start().done((data) => {
$this.sendMsg();//数据获取
}).fail((data) => {
});
},
sendMsg() {
var $this = this;
$this.proxy.invoke("Hell", $this.value).done((msg) => {
});
},
getMsg() {
var $this = this;
$this.proxy.on("Connect_Mq", (data) => {
//Connect_Mq是后端在动态变化数据时的方法名称
// debugger;
// $this.showmsg = data;
$this.$emit('SignalrData',data);
})
}
}