websocketClient
来自于:小沈阳的弟弟
概述
websocketClient是一个用于连接websocket服务端的客户端模块,本模块不含心跳包检测,开发者可自行做一个定时器不断轮询发送数据信息,模块中的方法基本能满足开发者对websocket的应用需求。
open
打开
open({params}, callback(ret, err))
params
WebsocketUrl:
- 类型:字符串
- 描述:(必填项)连接的websocket地址,例如:ws://202.103.11.251:9502?act=connect或者wss://202.103.11.251?act=connect(wss协议不需要填写端口号)
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
state: //数字类型;对应的值有:alreadyConnectSuccess,connectSuccess,messageGetSuccess,closed,(还有其他连接失败或者错误的提示信息);
}
alreadyConnectSuccess表示之前已经连接成功,connectSuccess表示本次连接成功,messageGetSuccess表示有新的数据过来(对应数据的键值为:data),closed表示连接已经关闭
示例代码
var websocketClient = api.require('websocketClient');
var url="ws://202.103.11.251:9502?act=connect";
websocketClient.open({WebsocketUrl:url},function(ret,err){
if(ret)
{
if(ret.state=="alreadyConnectSuccess")
{
alert("已经连接成功,请勿重复连接");
}
else if(ret.state=="connectSuccess")
{
alert("连接成功");
}
else if(ret.state=="messageGetSuccess")
{
alert("来新消息了,新消息为:" + ret.data);
}
else if(ret.state=="closed")
{
alert("连接已经断开");
}
else
{
alert("连接失败或者出现错误,信息为:" + ret.state);
}
}
else
{
alert("连接失败");
}
});
可用性
Android系统
可提供的1.0.0及更高版本
getConnectState(IOS端不支持)
获取客户端当前websocket的连接状态
getConnectState({params})
params(不需要任何参数)
示例代码
var websocketClient = api.require('websocketClient');
websocketClient.getConnectState({},function(ret,err){
if(ret)
{
if(ret.state)
{
alert("连接成功");
}
else
{
alert("连接已经断开");
}
}
});
可用性
Android系统
可提供的1.0.0及更高版本
send
发送消息
send();
示例代码
var websocketClient = api.require('websocketClient');
websocketClient.send({text:"你好"},function(ret,err){
if(ret)
{
if(ret.state=="success")
{
alert("发送成功");
}
else if(ret.state=="connectFailed")
{
alert("发送失败,连接已断开");
}
else
{
alert("发送失败");
}
}
else
{
alert("发送失败");
}
});
可用性
Android系统
可提供的1.0.0及更高版本
close
关闭当前客户端websocket与服务端的连接
close();
示例代码
var websocketClient = api.require('websocketClient');
websocketClient.close();
可用性
Android系统
可提供的1.0.0及更高版本