KBEngine官方论坛

 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 配置 开服
查看: 201|回复: 6

引擎是如何防止客户端A调用客户端B再server上的脚本?

[复制链接]

41

主题

94

帖子

719

积分

高级会员

Rank: 4

积分
719
发表于 2018-8-22 11:13:53 | 显示全部楼层 |阅读模式
因为每个脚本只要有exposed标识,就能够被client 所调用
我想问的是,clientA,可以调用 clientB 的方法吗?
引擎底层是如何避免这样的事情发生的, 能贴一些相关的代码吗?谢谢!
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 2018-8-22 16:25:53 | 显示全部楼层
连接已经绑定了对应的实体, 通过你的连接去调用别人的实体自然exposed不会等于那个实体, 逻辑代码可以拒绝也可以允许
QQ:3603661
3603661@qq.com
回复

使用道具 举报

41

主题

94

帖子

719

积分

高级会员

Rank: 4

积分
719
 楼主| 发表于 2018-8-22 17:59:14 | 显示全部楼层
柯标 发表于 2018-8-22 16:25
连接已经绑定了对应的实体, 通过你的连接去调用别人的实体自然exposed不会等于那个实体, 逻辑代码可以拒 ...

那请问一下,  有可能会出现, 下面的这种情况
playerA  在服务器中的对应的 entity 是 PlayerAEntity ,
playerB 在服务器中对于的 Entity 是 PlayerBEntity,
请问, 有可能, PlayerA 调用 PlayerBEntity 的方法吗?   比如什么情况下,谢谢!
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 2018-8-22 18:04:13 | 显示全部楼层
你可以在客户端直接调用B的方法, 所以exposedID提供给你判断。

比如你可以直接调用他的方法查看他的装备
QQ:3603661
3603661@qq.com
回复

使用道具 举报

41

主题

94

帖子

719

积分

高级会员

Rank: 4

积分
719
 楼主| 发表于 2018-8-22 20:40:54 | 显示全部楼层
柯标 发表于 2018-8-22 18:04
你可以在客户端直接调用B的方法, 所以exposedID提供给你判断。

比如你可以直接调用他的方法查看他的装备 ...

比如ClientA找到该场景的 ClientBEntity,
然后通过ClientBEntity 调用相应的比如暴露出来的方法 onFunction(),
ClientBEntity.onFunction()
这个时候, 在onFunction内, 得到的 exposed 就是 ClientBEntity 的ID, 而内部的 self.ID 依然还是 ClientA 的ID, 这样说对吗?
回复

使用道具 举报

5

主题

3497

帖子

214748万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2147483647

引擎扛把子

发表于 2018-8-22 20:53:48 | 显示全部楼层
exposed 是clientA的玩家ID, self.id就是当前实体id, 这个不会变
exposedID后来改名为callerID,就是调用者的ID,这要更好理解。
实体自身id肯定不能变
QQ:3603661
3603661@qq.com
回复

使用道具 举报

41

主题

94

帖子

719

积分

高级会员

Rank: 4

积分
719
 楼主| 发表于 2018-8-22 21:45:58 | 显示全部楼层
柯标 发表于 2018-8-22 20:53
exposed 是clientA的玩家ID, self.id就是当前实体id, 这个不会变
exposedID后来改名为callerID,就是调用 ...

好的,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|KBEngine Forum

GMT+8, 2018-12-10 19:29 , Processed in 0.034818 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表