【发布时间】:2017-10-20 05:23:03
【问题描述】:
我有一个小型烧瓶网站,我想通过它提供一个 ical 提要。
我已经创建了一个经常更新的 ics 文件,但是我不知道如何从网站上提供它。
我尝试通过Response 和serve_file 进行操作,但它们只是在文件中显示文本。
【问题讨论】:
我有一个小型烧瓶网站,我想通过它提供一个 ical 提要。
我已经创建了一个经常更新的 ics 文件,但是我不知道如何从网站上提供它。
我尝试通过Response 和serve_file 进行操作,但它们只是在文件中显示文本。
【问题讨论】:
您需要设置正确的content disposition 响应头。在您的情况下,标题将类似于以下内容:
Content-Disposition: attachment; filename=calender.ics;
在您的 Flask 路由中,您的代码应如下所示:
from flask import make_response
app = Flask(__name__)
# ...
@app.route('/calendar/')
def calendar():
# Get the calendar data
_calendar = make_calendar()
# turn calendar data into a response
response = make_response(_calendar)
response.headers["Content-Disposition"] = "attachment; filename=calendar.ics"
return response
【讨论】: