Lua异步socket实现LuaSocketEvent开源啦
Lua异步socket实现LuaSocketEvent
开源啦!!! https://github.com/dotcoo/LuaSocketEvent
终于可以抛弃WebSocket协议了,轻装上阵,轻松自如.
使用介绍:
服务器端
使用nc模拟
nc -l 8888
客户端
在main.lua第一行引入LuaSocketEvent
require("socketevent")
创建链接
-- 创建一个tcp链接
local sock = socketevent.tcp()
-- 注册事件
sock:on("connect", function(event)
print("connect")
end)
sock:on("data", function(event)
print("data: " .. event.data)
end)
-- sock:on("message", function(event)
-- print("data: " .. event.data)
-- end)
sock:on("close", function(event)
print("close!")
end)
sock:on("error", function(event)
print("error: " .. event.error .. ", " .. event.message)
end)
-- 链接服务器
sock:connect("127.0.0.1", 8888)
-- 发送数据
print("send: hello server")
sock:send("hello server\n")
-- 防止程序直接退出
-- sock:wait()
data事件是接收到的原始数据.
message事件接收到的是完整消息.
message与data不同的是消息经过粘包处理,格式为4字节的消息头部和消息内容.