使用 Flask 提供 ical feed

Serve an ical feed with Flask

我有一个小的 flask 网站,我想从它提供一个 ical feed。 我已经创建了一个经常更新的 ics 文件,但是我不知道如何从网站上提供它。 我已经尝试通过 Responseserve_file 来实现,但它们只显示文件中的文本。

您需要设置正确的 content disposition header 响应。在您的情况下,header 将类似于以下内容:

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