如何在python中创建有状态服务器



我想制作一个代理服务器,它也是有状态服务器,我的代码只适用于一个请求。有人知道我如何让他一直监听,直到用户关闭窗口或退出?

def film_server(req):
server_film_ip = "54.71.128.194"
server_port = 92
with socket.socket() as sock:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_address = (server_film_ip, server_port)
sock.connect(server_address)
sock.send(req.encode())
ans = sock.recv(1024).decode()
return ans
def connect_server():
PORT = 9090
with socket.socket() as listening_sock:
listening_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_address = ('', PORT)
listening_sock.bind(server_address)
listening_sock.listen(1)
client_sock, client_address = listening_sock.accept()
req = client_sock.recv(1024).decode()
ans = film_server(req)
client_sock.send(ans.encode())

如果您需要较少的痛苦和更高级别的抽象,请在serve_forever方法的帮助下尝试一个可用的服务器。您当前的实现需要无休止的循环,请检查此答案https://stackoverflow.com/a/50197481/5274713

最新更新