您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

服务器端Flask中的服务器发送事件完成后如何重定向?

服务器端Flask中的服务器发送事件完成后如何重定向?

要做的是将重定向URL作为最后一个事件发送-您仍然需要使用JavaScript进行重定向,但是您无需再对路径进行硬编码:

def import_progress():
    """
    Just a small example
    """
    for number in range(1, 101):
        sse_id = str(number)
        sse_data = str(number)
        sse_event = 'import-progress'

        if number == 100:
            sse_event = 'last-item'
            sse_data = url_for('product_list')

        yield "id:{_id}\nevent:{event}\ndata:{data}\n\n".format(
            _id=sse_id, event=sse_event, data=sse_data)

然后,您的最后一项处理程序将变为:

source.addEventListener('last-item', function(event) {
     source.close();
     redirect(event.data);
   }, false
);

redirect变得简单:

function redirect(url) {
  document.location = url;
}
Python 2022/1/1 18:47:13 有366人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶