创建代理,通过代理应用程序发送消息

2024-09-30 08:18:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个问题,如何发送数字从N客户端到代理。代理将号码从客户端转发到服务器。服务器计算平均值并发送回代理服务器,最后客户端从代理服务器获得响应。在

我正在使用下面的TCP套接字(使用Python)。我想做的是: 如果有4个客户机将10、10、10、10等整数发送给proxy,然后再发送END,那么proxy将它们作为{10,10,10,10,END}发送到服务器。服务器在计算平均值(例如,avg=10+10+10+10/4=10)后回复给代理,然后代理将平均值返回给客户端。在

我已经在客户机/代理/服务器之间创建了连接,但是使用SELECT发送整数时遇到问题。在

请检查下面的代码,并建议如何使用SELECT(在pythontcpsocket中)实现这一点。在

对于客户:::

import socket
HOST = 'localhost'
PORT = 21001
proxysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
proxysock.connect((HOST, PORT))
while 1:
      x = int(raw_input())
      proxysock.sendall(x)
      data = proxysock.recv(1024)
      proxysock.close()

对于代理:

^{pr2}$

对于服务器::

   import socket 
   HOST = 'localhost'
   PORT = 21001


 serversock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
 serversock.bind((HOST, PORT))
 s.listen(10) 
 while 1:
       proxyclientsock, addr = serversock.accept()
data = proxyclientsock.recv(2048) 

proxyclientsock.sendall()
proxyclientsock.close()

Tags: 服务器host客户端代理客户机port整数socket

热门问题