我用python 2.7编写了这段代码:
class LoadBalancerHandler:
def __init__(self, file_name):
self.server_socket = socket.socket(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
file = open(file_name)
setup_apps(file.read())
def listen(self, host='localhost', port=80):
self.server_socket.bind((host,port))
self.server_socket.listen(5)
while True:
(client_socket, address) = self.server_socket.accept()
threadHandling = ThreadHandling(client_socket, self)
threadHandling.start()
但我收到此错误:
类型错误:参数必须是字符串或只读字符缓冲区,而不是元组
此错误由以下行引发:self.server_socket.bind((host,port))
同样,我认为您对socket.socket(...)的选项是不正确的。 如果您尝试创建 TCP 侦听器,这有效
import socket
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind(('localhost',5555))
s.listen(5)