# 概述
websocket 为一种常连接形式,可在设备间建立管道通信
websocket 分为 “服务端” 和 “客户端” ,多个客户端可以连接同一个服务端
websocket 必须运行在子线程中
案例下载,nsp文件需要在创建界面导入 (opens new window)
# websocket服务端
案例:
-- 创建一个webSocket 服务器端 参数为(创建的端口)
s = webSocketServer(1123);
-- 当服务器 开始运行 回调
s:onStart(function()
print('s -start')
end);
-- 当服务器 打开 回调
s:onOpen(function(con)
print("s - open")
-- 发送信息 给客户端
con:send("12333");
end);
-- 当服务器 收到客户端 发来的消息时 回调
s:onMessage(function(con,msg)
-- con:client 端对象
-- msg:收到的消息
print('s - message')
end);
s:start();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# websocket 客户端
案例:
--这是 一个 webSocket - 客户端
-- 创建一个 连接 【参数为server 端的连接地址,(ws:+ip:端口)组成】
client = webSocketClient("ws://127.0.0.1:1123");
-- 当连接打开回调
client:onOpen(function()
print("c - onOpen")
end)
-- 当连接打错误回掉
client:onError(function(msg)
print("c- error "..msg:getLocalizedMessage());
end)
-- 当客户端收到服务器发来的消息
client:onMessage(function(msg)
print("c "..msg)
end)
client:connect();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23