2014-01-28 57 views

回答

-4

嘗試使用套接字的泡菜,泡菜將變量轉換成字符串,那麼你就可以恢復其他服務器上的對象

只是主要功能,此代碼不單獨工作

socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
sock.bind((host, port)) 
conn, addr = sock.accept() 
conn.sendall(pickle.dumps({'somedictionary':data})) 

dict=pickle.loads(bufferreceived) 
+0

這並不意味着它不適用於網絡..只是不接受來自不受信任主機的數據,因爲它可以是任何東西......如果您知道從哪裏接收數據,這不是問題,和......一些正在學習基本事物的人可能會寫出一些真正不安全的東西...... – BrenoZan

+1

這個答案的信任在哪裏?關於使用此代碼的危險性的警告在哪裏?我*希望*提問的人在閱讀了這個答案後閱讀了醃文檔,並看到了自己的警告,但在不重複該警告的情況下給出這個答案是不負責任的。除此之外,「我想通過網絡發送數字5」是讓自己面對這些問題的一個不好的理由。確實,你可能希望通過網絡發送泡菜,但前提是你的問題比這更難。對於這樣簡單的事情來說,風險並不值得。 –

0

一個簡單的方法來做到這一點將通過網絡服務。本質上,你可以讓ComputerB在一個端口(例如80,81,8100等)上偵聽,並讓你的腳本在ComputerA上通過http與它通信。

您可以使用託管在Web服務器中的簡單框架(如web.pyDjango)來調用設置此變量的一些Python代碼。

0

這真的取決於你的技術要求,程序架構等,但基本上我會建議你將數據恢復到使用某種消息隊列服務在您的應用程序之間進行通例如RabbitMQ。

0

嘗試ZeroMQ

ØMQ(也稱爲ZeroMQ,0MQ,或ZMQ)看起來像一個可嵌入 網絡庫,但就像一個併發框架。它爲您提供穿越各種傳輸(如 進程內,進程間,TCP和組播)的原子消息的套接字。您可以將套接字 與N對N連接,如扇出,發佈 - 訂閱,任務分發和 請求回覆。

相關問題