0

I am creating a client server program on which client downloads server's files. it works fine in localhost, but the problem occurs in except localhost connection. I've tried googling but none of the solutions(from previously suggested to the same problem) works.

Here is my code:

def upload(sock): # server.py
    filename = str(sock.recv(4096)).split(' end')[0]
    if os.path.exists(filename):
        sock.send('YES')
        sock.send(str(os.path.getsize(filename)) + ' end')
        foo = open(filename, 'rb')
        upbytes = foo.read(4096)
        sock.sendall(upbytes)
        while upbytes != '':
            upbytes = foo.read(4096)
            sock.sendall(upbytes)
        foo.close()
        print "\tUpload Complete !"
    else:
        sock.send('NO')

def download(sock, filename): #client.py
    sock.send(filename + ' end')
    if sock.recv(4096) == 'YES':
        filesize = int(str(sock.recv(4096)).split(' end')[0])
        print filesize, 'filesize'
        foo = open('downloaded_' + os.path.basename(filename), 'wb')
        downbytes = sock.recv(4096)
        foo.write(downbytes)
        downlen = len(downbytes)
        while downlen < filesize:
            downbytes = sock.recv(4096)
            if not downbytes:
                break
            foo.write(downbytes)
            downlen += len(downbytes)
        foo.close()
        print 'filesize', filesize, 'downlen', downlen
        print "\t\tDownload Complete !\n"
    else:
        print "\t\tFile not found ! <" + filename + '>'

I've tried different solutions but none of them worked!

Edited by Bhuwan_1

2
Contributors
1
Reply
14
Views
2 Weeks
Discussion Span
Last Post by rproffitt
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.