蟒蛇'TypeError: argument must be string or read-only character buffer, not tuple'



我用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)

最新更新