本文介绍登云梯JS开发框架中TCP组件所提供的相关方法说明,支持的硬件平台列表以及参考示例代码。
目前TCP组件只支持了TCP Client功能。
硬件平台
产品型号 | 是否支持 | 硬件类型 |
HaaS600Kit | 是 | 开发板 |
HaaS510 | 是 | DTU |
HaaS520 | 是 | DTU |
HaaS530 | 是 | DTU |
HaaS531 | 是 | DTU |
HaaS632-LT32V | 是 | 模组 |
HaaS600-EC600S | 是 | 模组 |
HaaS600-EC600N | 是 | 模组 |
HaaS600-EC600U | 是 | 模组 |
HaaS600-N715 | 是 | 模组 |
createClient(Object options)
创建一个TCP Client实例,创建TCP客户端时会连接TCP Server。
入参
Object类型,其属性有:
属性 | 类型 | 是否必填 | 描述 |
host | String | 是 | 需要连接的IP地址或者域名。 |
port | Number | 是 | 需要连接的端口号。 |
success | Function | 否 | 连接成功的回调函数。 |
fail | Function | 否 | 连接失败的回调函数。 |
返回
一个TCP Client实例。
TCP Client实例
事件 | 描述 |
'close' | 当Socket关闭时,触发 |
'connect' | 当连接到Socket服务器时,触发 |
'disconnect' | 当连接断开时,触发 |
'message' | 当Socket接收到数据时,触发 |
'error' | 当Socket通信过程中遇到错误时,触发 |
'message'
事件回调函数的参数有:
属性 | 类型 | 描述 |
data | ArrayBuffer | 接收到的TCP数据。 |
datalen | Number | 接收到的TCP数据长度。 |
'error'
事件的回调函数参数有:
属性 | 类型 | 描述 |
error | String | 错误信息。 |
TCPClient.send(Object option)
向TCP Server发送消息。
入参
Object类型属性有:
属性 | 类型 | 是否必填 | 描述 |
message | String | ArrayBuffer | 是 | 要发送的数据。 |
success | Function | 否 | 发送成功的回调函数。 |
fail | Function | 否 | 发送失败的回调函数。 |
返回
无。
TCPClient.reconnect()
当发生'disconnect'
事件时,可以使用该接口主动连接。
入参
无。
返回
无。
TCPClient.close()
关闭TCP Client实例,相当于销毁。
入参
无。
返回
无。
TCPClient.on(String event, Function callback)
注册TCP Client事件回调函数。
入参
属性 | 类型 | 是否必填 | 描述 |
event | String | 是 | 注册的事件名称。 |
callback | Function | 是 | 监听事件的回调函数。 |
返回
无。
示例代码
import * as tcp from 'tcp'
var tcpClient = tcp.createClient({
host: '100.81.240.32',
port: 50000,
success: function() {
console.log('tcp client connect success');
},
fail: function() {
console.log('tcp client connect failed');
}
});
tcpClient.on('message', function(data, datalen) {
console.log('tcp receive datalen: ' + datalen + ' payload: ' + data);
tcpClient.close();
});
tcpClient.on('close', function() {
console.log('tcp client closed');
});
tcpClient.on('connect', function() {
console.log('tcp client connected');
});
tcpClient.on('disconnect', function() {
console.log('tcp client disconnected');
});
tcpClient.on('error', function(err) {
console.log('tcp client error: ' + err);
});
tcpClient.send({
message: 'hello, this is tcp client test',
success: function() {
console.log('tcp send success');
},
fail: function() {
console.log('tcp send failed');
}
});