jeudi 2 mars 2017

TypeError: Type str doesn't support the buffer API (FTP)

the server code is:

sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    sock.bind(('',10600))
    sock.listen(5)
    while True:
        conn,sddr=sock.accept()
        userid,userpwd=conn.recv(1024).split(',')
        if userid in users and users[userid]==userpwd:
            conn.send(b'OK')
......

the client code is:

sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    sock.connect((serverIP,10600))
    userID=input('please enter userid: ')

    userPwd=getpass.getpass('please enter password: ')
    message=userID+','+userPwd
    sock.send(message.encode())
    login=sock.recv(100)
......

After I input the userIDand userPwd, errors are triggered: client..: sock.send(message.encode()) AttributeError: 'tuple' object has no attribute 'encode';

server..: userid,userpwd=conn.recv(1024).split(',') TypeError: Type str doesn't support the buffer API.

How can I fix it?




Aucun commentaire:

Enregistrer un commentaire