Python Flask:从其他链接发送文件

2024-10-02 16:29:49 发布

您现在位置:Python中文网/ 问答频道 /正文

如何从请求的结果发送文件,如果我将文件写入一个文件夹,它可以工作,但写入需要时间。但我想要的是直接从请求结果发送。对不起,我英语不好

 import requests

 def get(cls, date: str, date_end: str, office_in_charge: str):
        user = get_jwt_identity()
        url = "http://localhost:9090/jasperserver/rest_v2/reports/reports/interactive/DTR.pdf"
        r = requests.get(url,
                         params={
                             'username': 'jasperadmin',
                             'password': 'jasperadmin',
                             'p1': user,
                             'p2': user,
                             'date': date,
                             'date_end': date_end,
                             'office_in_charge': office_in_charge
                         }
                         , allow_redirects=True)

        return send_file(r.content, as_attachment=True, mimetype='application/pdf')

Tags: 文件intrueurlgetdatepdfrequests
1条回答
网友
1楼 · 发布于 2024-10-02 16:29:49

这可能适合您:

 import requests, io

 def get(cls, date: str, date_end: str, office_in_charge: str):
        user = get_jwt_identity()
        url = "http://localhost:9090/jasperserver/rest_v2/reports/reports/interactive/DTR.pdf"
        r = requests.get(url,
                         params={
                             'username': 'jasperadmin',
                             'password': 'jasperadmin',
                             'p1': user,
                             'p2': user,
                             'date': date,
                             'date_end': date_end,
                             'office_in_charge': office_in_charge
                         }
                         , allow_redirects=True)

        return send_file(
                     io.BytesIO(r.content),
                     attachment_filename='report.pdf',
                     mimetype='application/pdf'
               )

相关问题 更多 >