Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python在不打开端口的情况下通过防火墙双向发送无线传感器数据?_Python_Webserver_Sensors_Raspberry Pi - Fatal编程技术网

如何使用Python在不打开端口的情况下通过防火墙双向发送无线传感器数据?

如何使用Python在不打开端口的情况下通过防火墙双向发送无线传感器数据?,python,webserver,sensors,raspberry-pi,Python,Webserver,Sensors,Raspberry Pi,我是这个论坛的新手,对python也比较陌生,但一直在玩sockets/google app engine/django等。我不知道如何最好地设计这个应用程序以及使用什么工具。有更多经验的人吗 硬件:我在防火墙后面有一个Raspberry Pi,用于收集无线传感器数据。我想从外部web服务器(也称为google app engine或ec2服务器)访问该数据 目标:目标是让不同家庭的用户(如我的妈妈、爷爷等,与他们自己的pi分开居住)能够在集中服务器上检查他们在web上的数据。我还应该能够在Pi

我是这个论坛的新手,对python也比较陌生,但一直在玩sockets/google app engine/django等。我不知道如何最好地设计这个应用程序以及使用什么工具。有更多经验的人吗

硬件:我在防火墙后面有一个Raspberry Pi,用于收集无线传感器数据。我想从外部web服务器(也称为google app engine或ec2服务器)访问该数据

目标:目标是让不同家庭的用户(如我的妈妈、爷爷等,与他们自己的pi分开居住)能够在集中服务器上检查他们在web上的数据。我还应该能够在Pi上启动操作,以便数据应该双向发送。理想情况下,无需打开防火墙端口(防伪)

到目前为止我做了什么: 我能够在PI上创建套接字以将数据发送到django服务器(ec2),但我必须为此打开端口

问题:

  • 我想用python实现这一点,没有开放端口,双向数据
  • 您如何处理故障保护,例如:
    • 互联网正在崩溃
    • 缺少服务器读数
    • 停电
  • 仅仅通过在Pi和web服务器之间同步数据库就可以解决这个问题吗
  • 我意识到这是一个非常广泛的问题,但也许这不是关于确切的工具,而是关于一个人将用于这种特殊类型的项目的技术?欢迎使用工具、技术、范例或一般经验

    谢谢大家,


    David

    在我读到的内容中,您的问题也可以被重新表述为“如何在Python中绕过防火墙?”。如果这是一个一次性的类型,或者是一些原型,那么您可能可以拨号并创建一个(反向)ssh隧道。如果这是更多的话,我更倾向于使用通过HTTP发布和获取数据的API。对于PI来说,定期“获取”一组指令要比让服务器与它通信容易得多。感谢您的回复。我想我的问题是多部分的。我知道我可以在需要的时候“取”指令。问题是,当我单击Web服务器上的“打开指示灯”按钮时,我希望它在此时此地执行此操作,而不是在计划下次检查数据时执行此操作。这将主要用于浇灌植物,但仍然是。是的,我理解。但是你试图绕过防火墙,这并不容易。您可以了解LogMeIn和Apple Remote Control等服务是如何工作的。我知道LogMeIn在网上有一些白皮书,并且坦率地讲述了他们绕过防火墙所做的一切。。。你必须重新实现这一点。很好。我在找一些文件。现在忽略防火墙问题,您将如何设计一种异步方法在pi和服务器之间传输数据的方法