У меня есть сервер, который транслирует mp3-файлы.Однако он работает нормально, если в имени файла есть пробел, он говорит: «файл не найден».
Я попытался поместить% 20 вместо пробела, но безуспешно (на самом деле,он делает это автоматически, когда печатает request.path, все пустые места на консоли преобразуются в% 20).
Я использую библиотеку Twisted Matrix.Это код, который я использую:
class playMP3(Resource):
isLeaf = True
def render_GET(self, request):
this=urlparse.urlparse(request.path)#scheme,netloc,path,query
root,ext=os.path.splitext(this.path)
filename=os.path.basename(request.path)
fileFolder=request.path.replace(filename,"")
self.serverRoot=os.getcwd()
print (request.path)
if ext==".mp3":
thisFile=File(self.serverRoot+request.path)
return File.render_GET(thisFile,request)
resource = playMP3()
factory = Site(resource)
reactor.listenTCP(8880, factory)
reactor.run()