|
- function WSSHClient() {
- };
-
- WSSHClient.prototype._generateEndpoint = function () {
- if (window.location.protocol == 'https:') {
- var protocol = 'wss://';
- } else {
- var protocol = 'ws://';
- }
- var endpoint = protocol + window.location.host + '/ws';
- return endpoint;
- };
-
- WSSHClient.prototype.connect = function (options) {
- var endpoint = this._generateEndpoint();
-
- if (window.WebSocket) {
- this._connection = new WebSocket(endpoint);
- }
- else if (window.MozWebSocket) {
- this._connection = MozWebSocket(endpoint);
- }
- else {
- options.onError('WebSocket Not Supported');
- return;
- }
-
- this._connection.onopen = function () {
- options.onConnect();
- };
-
- this._connection.onmessage = function (evt) {
- var data = evt.data.toString()
- options.onData(data);
- };
-
-
- this._connection.onclose = function (evt) {
- options.onClose();
- };
- };
-
- WSSHClient.prototype.close = function () {
- this._connection.close();
- };
-
- WSSHClient.prototype.send = function (data) {
- this._connection.send(JSON.stringify(data));
- };
-
- WSSHClient.prototype.sendInitData = function (options) {
- var data = {
- hostname: options.host,
- port: options.port,
- username: options.username,
- password: options.password
- };
- this._connection.send(JSON.stringify({"tp": "init", "data": options}))
- console.log("发送初始化数据:" + options)
- }
-
- WSSHClient.prototype.sendClientData = function (data) {
- this._connection.send(JSON.stringify({"tp": "client", "data": data}))
- console.log("发送客户端数据:" + data)
- }
-
- var client = new WSSHClient();
|