我正在为python中的raspberry pi编写客户端。当字母“m”时,它应该返回文件夹中的歌曲。但它不承认这个消息。这是代码:
import socket
import sys
import os
BUFSIZE=1024
sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
server_address=('localhost',1234)
print >>sys.stderr,'connecting to %s port %s' %server_address
sock.connect(server_address)
message_to_put='Connected to %s port %s' %server_address
response=sock.recv(BUFSIZE)
#response='m'
if response=='m':
print 'inside if'
songs=os.listdir("music/")
songs.sort()
sock.sendall(bytes(songs))
print response
我在RPi之前尝试了我的linux中的代码,但它没有进入if子句,即使我打印响应时它打印为'm'。
我正在使用我编写的Java Server,它将消息作为PrintStream.println()发送。但我不认为服务器是问题,因为我在java客户端尝试过,它工作正常。我认为在python中将字节更改为字符串存在问题。 任何帮助表示赞赏。 提前谢谢