新版游戏网络层

简化API使用,支持Protobuf协议,可根据配合的服务器自定义协议头信息

HTTP

创建HTTP请求对象
var http: HttpManager = new HttpManager();
http.server = "http://172.16.16.185:8088/";
HTTP GET方式请求文本类型返回数据
// 请求参数为可选项,没有时可不传值
var params: any = {
    "keys": "参数"
};
ret = await http.getText("请求命令名", params);
if (ret.isSucc) {
    console.log(ret.res);       // 请求成功信息
}
else {
    console.log(ret.err);       // 请求失败信息
}
HTTP GET方式请求JSON类型返回数据
// 请求参数为可选项,没有时可不传值
var params: any = {
    "keys": "参数"
};
ret = await http.getJson("请求命令名", params);
if (ret.isSucc) {
    console.log(ret.res);       // 请求成功信息
}
else {
    console.log(ret.err);       // 请求失败信息
}
HTTP POST方式请求JSON类型返回数据
// 请求参数为可选项,没有时可不传值
var params: any = {
    "keys": "参数"
};
ret = await http.postJson("请求命令名", params);
if (ret.isSucc) {
    console.log(ret.res);       // 请求成功信息
}
else {
    console.log(ret.err);       // 请求失败信息
}
HTTP POST方式请求Protobuf类型返回数据
var ret = await http.postProtobuf<proto.client.LoginResp>(proto.client.Cmd.LOGIN, "LoginReq", "LoginResp", msg);
if (ret.isSucc) {
    console.log(ret.res);       // ret.res为proto.client.LoginResp类型,编码时有代码提示功能
}       
else {
    console.log(ret.err);       // 请求失败信息
}

WebSocket

创建一个WebSocket网络连接对象

this.game = new NetNodeGame();
this.game.init(new WebSock(), new GameProtocol(), new NetGameTips());
NetManager.getInstance().setNetNode(this.game, NetChannelType.Game);

连接WebSocket网络服务器

NetManager.getInstance().connect({
    url: `ws://127.0.0.1:8888`,
    autoReconnect: 0            // 手动重连接
}, NetChannelType.Game);

请求Protobuf协议的网络数据

var params = new proto.client.UserReq();
params.uid = 10000;
var ret = await netChannel.game.req<proto.client.UserResp>(proto.client.Cmd.User.toString(), "UserReq", "UserResp", params);
if (ret.isSucc) {
    console.log(ret.res);       // ret.res为proto.client.UserResp类型,编码时有代码提示功能
}
else {
    console.log(ret.err);       // 请求失败信息
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值