首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyro4 Remote连接被阻止

Pyro4 Remote连接被阻止
EN

Stack Overflow用户
提问于 2016-10-20 17:45:44
回答 2查看 639关注 0票数 0

我正在使用Pyro4在树莓和计算机之间建立远程连接。我已经在我的计算机上测试了本地代码。但现在我想把它用在覆盆子上。唯一的问题是目标机器拒绝了它。Nameserver已设置,我可以请求元数据,客户端没有给出任何错误。

服务器代码:

代码语言:javascript
复制
daemon = Pyro4.core.Daemon("192.168.0.199")
Pyro4.config.HOST = "192.168.0.199"
ns = Pyro4.locateNS()
print ns.lookup("client", return_metadata=True) #this works
callback = MainController()
daemon.register(callback)
vc2 = Pyro4.core.Proxy("PYRONAME:client@192.168.0.199:12345")

客户端代码:

代码语言:javascript
复制
ns = Pyro4.locateNS()
Pyro4.config.HOST = "192.168.0.199"
uri = daemon.register(VehicleController)
ns.register("client@192.168.0.199:12345", uri)
print "Connection set!"
daemon.requestLoop()

防火墙也处于关闭状态。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-10-21 20:59:04

主要问题是服务器从不运行守护程序请求循环,因此无法响应请求。

但是代码中有很多问题,如下所示:

这不是complete.

  • you're混淆了服务器和客户端的职责;为什么客户端要运行
  • ?这是服务器的工作。
  • 你正在注册一个对象,它的逻辑名称看起来像是一个物理名称。这不是名称服务器的工作方式,你在客户端和服务器端都注册了东西,creates.
  • what,

  • ,服务器从不运行守护进程的请求循环,这是'vc2‘代理在服务器中做的吗?客户端应该创建到服务器objects.
  • it's的代理,通常最好在执行其他操作之前设置Pyro的配置变量,这样您就不必重复使用守护程序绑定的IP地址。

总而言之,您似乎对Pyro的各种核心概念感到困惑。更好地理解(你已经看过手册的教程章节了吗?)相应地修复代码可能会解决您的问题。

票数 1
EN

Stack Overflow用户

发布于 2016-10-24 20:33:52

好的,还有更多的信息

当我编辑我的Pyro4核心网址时,我可以从obj_ x @0.0.0.0: x连接到obj_ x @192.168.0.199: x,然后手动连接。所以我猜是我把地址注册到域名服务器的方式有问题。

我会和你保持联系的

汤姆

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40150916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档