2011-11-19 61 views
1

新手在这里寻找关于哪些技术我应该用于我的特定项目的建议。不寻找代码本身,只是意见。下面是我想要达到一个丑陋图:将数据发送到本地应用程序和从本地应用程序发送到远程托管服务器

[本地Python应用程序] < --ADVICE NEEDED这里 - > [托管Web服务器]

所以从上面的,我期待对于允许我的本地应用程序与托管的Web服务器通信的技术。这里的陷阱:我不能使用套接字,因为我在共享主机方案,我的托管公司限制了这一点。 IRC也被拒绝。我知道,使它有点棘手。

那么我还有剩下的选择吗?这里的一些想法,我有:

  1. 本地应用程序和服务器轮询一个MySQL数据库更改,并且或者可以做出改变(我真的不喜欢但是投票的想法,似乎并不像一个安全解决方案)
  2. 做一些远程http post来获取数据到服务器(可能?),然后轮询服务器上的某个文件以获取命令
  3. 在本地运行Web服务器,在本地将数据写入文本文件,然后托管的服务器轮询文件的变化(我真的想避免本地运行Web服务器出于安全原因)。

任何想法,无需投票?谢谢。

+0

与MySQL服务器交谈涉及使用套接字。制作HTTP POST涉及使用套接字。任何要连接到本地Web服务器的应用程序都将使用套接字来执行此操作。你确定你不能使用套接字吗? –

回答

3

也许paramiko可能是您的问题的一个很好的解决方案。我用的paramiko一些项目,我必须在一年半以前,这里是我与另一台计算机/服务器连接并执行一个简单的Python的文件我的代码的一部分:

import paramiko 

ssh = paramiko.SSHClient() 
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
IP = '...' 
username = '...' 
password = '...' 
ssh.connect(IP, username, password) 
stdin, stdout, stderr = ssh.exec_command('python hello.py') 
ssh.close() 

stdinstdoutsdterr与列表您执行的命令的输入/输出。

以下是有关的paramiko一些有用的信息:http://jessenoller.com/2009/02/05/ssh-programming-with-paramiko-completely-different/

+0

谢谢,这实际上是一个非常好的想法,并且该软件包捆绑在我的虚拟主机上。然而,无论出于什么原因,我无法与paramiko建立SSH连接(尽管我通过PuTTY使用了相同的凭据,而且工作得很好)。也许我的主机阻塞了连接?我会多看看它。 – radian

+0

不要忘记这个:'ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())',这可能是问题所在。你读过博客吗?它实际上是相当完整的 – juliomalegria

1

不知道如果我理解您的所有规格的正确,但是这是要我想到的第一件事是用RESTful web服务。

Here你可以找到一个StackOverflow的问题,提供一些洞察用python实现它们。

+0

谢谢,我将不得不多看看这一点。似乎有点整洁。 – radian

相关问题