[英]Send Data from Server to Client Python 2.7
我正在嘗試編寫一個讀取.pdf文件並將數據發送到客戶端服務器的服務器。
這是我的服務器程序的一個片段。
while True: # infinite loop to connect to a client
client, address = server.accept()
data = copyfile(path)
data = str(data)
client.send(data.encode('utf-8'))
client.close()
這是我的客戶端源代碼的片段:
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# assume my host and ports are correct
client.connect((host, port))
data = client.recv(1024)
s = data.decode('utf-8')
print s
client.close()
這是我得到的錯誤:
client.send(message.encode('utf-8'))
UnicodeDecodeError:'ascii'編解碼器無法解碼位置10的字節0xe2:序數不在范圍內(128)
只是直接發送字節。
#client.py
x = open('out.pdf','wb')
while 1:
data =''
data = s.recv(1024)
if data == b'': break
x.write(data)
x.close()
服務器代碼:
#server.py
x=open("test.pdf","rb")
client, address = s.accept()
while 1:
data = x.read(1024)
if data == b'':
print("finished")
x.close()
client.close()
break
client.send(data)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.