13 Star 69 Fork 22

johnsonyl/cpps

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
server.cpp 1.22 KB
一键复制 编辑 原始数据 按行查看 历史
johnsonyl 提交于 2021-01-23 13:00 +08:00 . update example
system("chcp 65001"); //use utf8 string
#import "socket"
//server
var socket_accept(var socketIndex)
{
println("acceptd:{socketIndex}");
}
var socket_data(var socketIndex,var buffer)
{
var packageSize = buffer.readInt32();
var s = buffer.readString(packageSize-4);
println(s);
if(s == "e")
{
srv.closesocket(socketIndex);
}
var writer = new Buffer();
writer.writeString(s);
socket_send(socketIndex, writer);
}
var socket_close(var socketIndex,var err,var errstr)
{
println("closed :{socketIndex},err:{err},errstr:{errstr}");
}
var socket_parser(var headerbuffer)
{
var size = headerbuffer.readInt32();
return size;
}
var socket_send(var socketIndex,var buffer)
{
var writer = new Buffer();
writer.writeInt32(buffer.length() + 4);
writer.write(buffer,buffer.length());
srv.send(socketIndex, writer);
}
println("start server");
var srv = new socket::server().setoption(new ServerOption(){
ip = "0.0.0.0",
headersize = 4,//header 4 bytes
accept = socket_accept,
data = socket_data,
close = socket_close,
parser = socket_parser
}).listen(4060);
println("start over");
while (true){
srv.run();
Sleep(1);
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/cppscript/cpps.git
git@gitee.com:cppscript/cpps.git
cppscript
cpps
cpps
v1.0.0

搜索帮助