gpt4 book ai didi

python-3.x - 从 Python 的 http.server 提供文件 - 使用文件正确响应

转载 作者:行者123 更新时间:2023-12-04 14:55:03 25 4
gpt4 key购买 nike

我只是想从 http.server 提供 PDF 文件。这是我的代码:

from http.server import BaseHTTPRequestHandler, HTTPServer

class MyServer(BaseHTTPRequestHandler):

def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'application/pdf')
self.send_header('Content-Disposition', 'attachment; filename="file.pdf"')
self.end_headers()

# not sure about this part below
self.wfile.write(open('/filepath/file.pdf', 'rb'))


myServer = HTTPServer(('localhost', 8080), MyServer)
myServer.serve_forever()
myServer.server_close()

我不知道如何回复 file.pdf现在,我一无所获。我确信标题是正确的,但我无法发送实际文件。

最佳答案

看起来您正在按照您的说法正确设置标题。我已经完成了您仅尝试使用文本数据 (CSV) 执行的操作。如图所示,您的代码的一个问题是您正在尝试写入文件对象而不是实际数据。你需要做一个 read实际获取二进制数据。

def do_GET(self):

# Your header stuff here...

# Open the file
with open('/filepath/file.pdf', 'rb') as file:
self.wfile.write(file.read()) # Read the file and send the contents

希望这至少能让你更接近一点。

关于python-3.x - 从 Python 的 http.server 提供文件 - 使用文件正确响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46105356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com