python的socket编程接收浏览器上传的文件_使用python套接字编程将文件发送到浏览器...

我正在尝试使用python(仅限于套接字编程)向客户机(浏览器:Chrome)发送一个文件(mp3)。我的问题是文件被下载了,而不是在浏览器上进行流式传输。我不明白我哪里错了。请告诉我。在

另外,下载的音频文件没有损坏,我可以播放音频。在

这是我的代码:import socket

import os

import time

from encodings.base64_codec import base64_encode

serversocket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

port=8000

def createServer():

serversocket.bind(("",port))

serversocket.listen(5)

file=open('music.mp3',"rb")

z=file.read()

var=len(z)

file.close()

(clientsocket, address) = serversocket.accept()

clcommand=clientsocket.recv(1024).decode('utf8')

header="HTTP/1.1 200 OK"

header1="Content-Type: audio/mpeg"

header2="Content-Length: {}".format(var)

blank="\r\n"

sendt=header+header1+header2+blank

clientsocket.send(sendt.encode())

file=open("music.mp3",'rb')

z=file.read(512)

while (z):

try:

clientsocket.send(z)

z=file.read(512)

except:

print("done sending")

exit()

createServer()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值