js客户端取消订阅的与订阅的操作方式
<script src="https://unpkg.io/sockjs-client@1.5.0/dist/sockjs.min.js"></script>
<script src='https://unpkg.io/@vertx/eventbus-bridge-client.js@1.0.0-1/vertx-eventbus.js'></script>
<script>
// Alternatively, pass in an options object
var 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
vertxbus_ping_interval: 10000
};
var eb = new EventBus('http://127.0.0.1:8080/eventbus/stream', options);
eb.enableReconnect(true);
eb.onreconnect = function() {}; // Optional, will only be called on reconnections
eb.onopen = function() {
//注册地址
eb.registerHandler('stream', function(error, message) {
if(message.type == 'rec'){
console.log(message.body);
}
});
// 发送消息给服务器
//eb.send('stream_reg', {interval: '5m'});
//取消订阅
var address = 'stream';
unreg(address);
}
function unreg(address){
eb.sockJSConn.send(JSON.stringify({
type: 'unregister',
address: address,
headers: {}
}));
delete eb.handlers[address];
}
</script>