0.9.8 • Published 7 years ago
angular2-websocket v0.9.8
angular2websocket
Based on https://github.com/AngularClass/angular-websocket and migrated to Angular2
Installation
npm install angular2-websocketUsage:
import {$WebSocket} from 'angular2-websocket/angular2-websocket'
var ws = new $WebSocket("url");
ws.send(event);also ws.getDataStream() returns Subject to which you can attach an Observer (https://github.com/Reactive-Extensions/RxJS)
Compilation
npm run typings
npm run compileThe default value for binary type is 'arrayBuffer'.
example
import {$WebSocket, WebSocketSendMode} from 'angular2-websocket/angular2-websocket';
// connect
var ws = new $WebSocket("ws://127.0.0.1:7000");
// you can send immediately after connect,
// data will cached until connect open and immediately send or connect fail.
// when connect fail, websocket will reconnect or not,
// you can set {WebSocketConfig.reconnectIfNotNormalClose = true} to enable auto reconnect
// all cached data will lost when connect close if not reconnect
// set received message callback
ws.onMessage(
(msg: MessageEvent)=> {
console.log("onMessage ", msg.data);
},
{autoApply: false}
);
// set received message stream
ws.getDataStream().subscribe(
(msg)=> {
console.log("next", msg.data);
ws.close(false);
},
(msg)=> {
console.log("error", msg);
},
()=> {
console.log("complete");
}
);
// send with default send mode (now default send mode is Observer)
ws.send("some thing").subscribe(
(msg)=> {
console.log("next", msg.data);
},
(msg)=> {
console.log("error", msg);
},
()=> {
console.log("complete");
}
);
ws.send("by default, this will never be sent, because Observer is cold.");
ws.send("by default, this will be sent, because Observer is hot.").publish().connect();
ws.setSendMode(WebSocketSendMode.Direct);
ws.send("this will be sent Direct, because send mode is set to Direct.");
ws.send("this will be sent and return Promise.", WebSocketSendMode.Promise).then(
(T) => {
console.log("is send");
},
(T) => {
console.log("not send");
}
);
ws.send("this will be sent and return Observer.").subscribe(
(msg)=> {
console.log("next", msg.data);
},
(msg)=> {
console.log("error", msg);
},
()=> {
console.log("complete");
}
);
ws.close(false); // close
ws.close(true); // close immediatelyBinary type
To set the binary type for the websocket one can provide it as string in the constructor. Allowed types are:
- 'blob' (default)
- 'arraybuffer'
var ws = new $WebSocket("ws://127.0.0.1:7000", null, null, 'arraybuffer');0.9.8
7 years ago
0.9.7
8 years ago
0.9.6
8 years ago
0.9.5
8 years ago
0.9.4
8 years ago
0.9.3
9 years ago
0.9.2
9 years ago
0.9.1
9 years ago
0.9.0
9 years ago
0.8.1
9 years ago
0.8.0
9 years ago
0.7.1
9 years ago
0.7.0
10 years ago
0.6.3
10 years ago
0.6.2
10 years ago
0.6.0
10 years ago
0.5.0
10 years ago
0.4.0
10 years ago
0.3.0
10 years ago
0.2.0
10 years ago