谢谢你的宝贵意见。这是我创建的代码。请检查并让我知道我如何能实现使用SELECT ... 对于客户::::
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()
对于代理::
import socket
from thread import *
HOST = 'localhost'
PORT = 21001
max_conn = 5
buffer_size = 2048
def start():
proxyserversock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
proxyserversock.bind((HOST, PORT))
proxyserversock.listen(max_conn)
while 1:
client_sock, addr = proxyserversock.accept()
data = client_sock.recv(buffer_size)
serversock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversock.connect((HOST, PORT))
serversock.sendall(X)
serversock.recv(buffer_size)
client_sock.sendall()
serversock.close()
client_sock.close()
对于服务器::
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()
我已经编写代码将客户端与代理和代理连接到客户端。请输入您的想法,N个客户端(例如4个客户端)如何可以发送整数给代理?并将代理发送给服务器。我想要按照以下方式实现代码: 如果有4个客户端发送数字10,10,10,10代理然后END然后代理接收他们为{10,10,10,10,结束}并发送到服务器。并且在计算平均值(例如,平均值= 10 + 10 + 10 + 10/4 = 10)之后服务器回复以代理并且然后向客户端代理回送平均结果。
我明白你以前的回答,但无法在代码中实现(使用SELECT)。请参阅代码并编辑它们。我真的很感激。谢谢。
你的问题很一般。尝试先写一些代码,然后如果你有一个特定的问题,你可以在这里询问它 –
我对python非常陌生。所以,我可以编写客户端/服务器。但我不知道如何用代理使用select函数编写客户端/服务器。 – rahmed
只是尝试搜索谷歌,有很多回答问题和指南 - https://encrypted.google.com/#q=writing%20proxy%20server%20python&safe=off –