gpt4 book ai didi

python - rpyc - 如何获取连接的公开函数列表

转载 作者:行者123 更新时间:2023-12-01 01:27:43 25 4
gpt4 key购买 nike

我有少量的 rpyc 服务器,它们仅部分具有相同的公开功能。

在客户端上,事件应该转发到所有已连接并对特定事件感兴趣的服务器。

我想从服务器连接对象获取服务器上可用的公开函数的列表。

到目前为止我发现的最好的事情是使用方法名称在客户端检查现有的公开函数,例如

try:
conn.root.exposed_recordLog
except Exception as e:
print(f"recordLog is not exposed: {str(e)}")

这会在客户端中引发 AttributeError 异常 - 但是 - 这也会在远程服务器上引发一个我想避免的异常。

考虑在每个服务器上添加通用的“expose_supportedFunctions”函数并返回其公开函数的列表,但这看起来有点矫枉过正,并且容易出现不匹配。

最佳答案

我所做的是添加此服务

def exposed_get_methods(self):
service_index = dir(self)
exposed_methods = [x.replace('exposed_', '') for x in service_index if x.startswith('exposed_')]
return exposed_methods

关于python - rpyc - 如何获取连接的公开函数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53208579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com