使用方式类似于websocket
1、html中引入
<script src='./guide/lib/sockjs.min.js'></script>
<script src='./guide/lib/vertx-eventbus.js'></script>
2、后台提供eventbus的服务访问地址
如:http://192.168.xxx.xxx:8080/eventbus
3、js监听,"chat.to.client"与"chat.to.server"是为了区分是接收还是发送数据的服务,这里前后台保持一致。
function getEventBusMessage(res) {
// let req = {};
let socketIoUrl = res["@SOCKET.IO_URL@"];
let options = {
vertxbus_reconnect_attempts_max: Infinity, // Max reconnect attempts
vertxbus_reconnect_delay_min: 1000, // Initial delay (in ms) before first reconnect attempt
vertxbus_reconnect_delay_max: 5000, // Max delay (in ms) between reconnect attempts
vertxbus_reconnect_exponent: 2, // Exponential backoff factor
vertxbus_randomization_factor: 0.5, // Randomization factor between 0 and 1
};
// 连接eventBus
let eventBus = new EventBus(socketIoUrl, options);
eventBus.onopen = function () {
//监听数据 此处的robot即chat.to.client,与后台一致
eventBus.registerHandler("robot", function (err, msg) {
// console.log(msg.body);//在这里对接收的数据进行一些操作
});
// 向服务端发送信息,类似于ajax的请求信息,chat.to.server与后台一致
// eventBus.publish("chat.to.server", JSON.stringify(req));//这行代码可以发送信息给服务端
// eventBus.close();
};
}
5、websocket
引入ws.js
(function($) {
$.config = {
url: '', //链接地址
};
$.init=function(config) {
this.config = config;
return this;
};
/**
* 连接webcocket
*/
$.connect = function() {
var protocol = (window.location.protocol == 'http:'