首页 > 其他分享 >请求结束后删除文件

请求结束后删除文件

时间:2024-06-07 11:55:39浏览次数:24  
标签:__ 文件 请求 删除 file new path id def

from flask import Flask, send_from_directory
import os
import atexit

app = Flask(__name__)

# 假设这是你的文件高亮处理类
class FileHighlighter:
    def __init__(self, file_path, chunk_id_list):
        self.file_path = file_path
        self.chunk_id_list = chunk_id_list
        # 这里省略了 FileHighlighter 的其他实现细节

    def highlight_file(self):
        # 这里省略了 highlight_file 的实现细节
        pass

    @property
    def new_file_path(self):
        # 返回处理后的新文件路径
        return "path/to/new/highlighted/file"

def delete_file_on_request_end(new_file_path):
    """在请求结束后删除文件"""
    def cleanup():
        if os.path.exists(new_file_path):
            os.remove(new_file_path)
    atexit.register(cleanup)

@app.route('/highlight/<file_path>/<chunk_id_list>')
def highlight_and_send(file_path, chunk_id_list):
    with FileHighlighter(file_path, chunk_id_list) as highlighter:
        highlighter.highlight_file()
        delete_file_on_request_end(highlighter.new_file_path)

        return send_from_directory(directory=os.getcwd(), path=highlighter.new_file_path, as_attachment=True)

if __name__ == '__main__':
    app.run()

标签:__,文件,请求,删除,file,new,path,id,def
From: https://www.cnblogs.com/dreammooncy/p/18236972

相关文章

  • 在Linux中,有哪些系统日志文件?
    在Linux系统中,系统日志文件是记录系统操作、运行状态、错误信息以及安全事件等的重要文件。以下是Linux中常见的系统日志文件及其简要描述:系统日志(SystemLogs):这些日志记录了系统整体运行情况、错误信息等。常见的系统日志文件包括/var/log/messages、/var/log/syslog等。这......
  • leetcode19删除链表的倒数第 N 个结点
    本文主要讲解删除链表倒数第n个节点的要点与细节c++与java代码如下,末尾本题之前可以尝试leetcode203移除链表元素具体要点:1.首先,单看移除链表节点,核心操作是:cur->next=cur->next->next 即,当前节点cur的下一个节点指向原本的下下个节点小细节:操作时,我们需要得到要......
  • anaconda环境 使用PyInstaller打包,运行exe文件出现导入_ssl错误
    使用PyInstaller打包后运行exe文件出现错误NameError:name'ssl'isnotdefined。观察PyInstaller打包程序输出,发现找不到DLL文件的警报,查看对应环境下的DLLs文件夹发现导入ssl的DLL文件缺失。查阅资料发现由于anaconda环境DLL文件错误存放在lib文件夹下面,致使PyInstaller打包......
  • 如何在 Windows 10/11 上恢复不在回收站中的永久删除文件夹?
    经验丰富的Windows用户将使用Windows备份和还原或文件历史记录来恢复不在回收站中的已删除文件夹。这些工具确实有助于Windows文件夹恢复,但并不总是有效。现在,许多专用的Windows数据恢复软件和免费解决方案都可以取代它们,从而为Windows用户提供了一种成功有效地恢复永久删......
  • 怎么发送超大文件?困扰已久的邮件大附件发送问题解决了!
    邮件是日常中使用最多的文件流转工具,特别是对于企业内部的员工间、及企业与企业间的业务开展,数据和文件的发送、业务留痕大多都基于邮箱展开。邮箱的普遍使用给用户基于邮箱进行业务沟通提供了前提,其中,Outlook邮箱是使用最广泛的邮箱之一。这使得邮箱成为一种最常用的通讯工具,但......
  • 从零手写实现 nginx-09-compress http 文件压缩
    前言大家好,我是老马。很高兴遇到你。我们为java开发者实现了java版本的nginxhttps://github.com/houbb/nginx4j如果你想知道servlet如何处理的,可以参考我的另一个项目:手写从零实现简易版tomcatminicat手写nginx系列如果你对nginx原理感兴趣,可以阅读:从零......
  • 公检法部门保密网文件导出,这样做才是真正的安全又便捷
    公检法是司法机关的核心组成,也是社会管理的重要组成,公检法部门的业务中涉及大量的居民数据、个人隐私、司法案件等信息,因此,数据的安全性至关重要。根据我国法律要求,同时基于对数据的保护需要,我国的公检法机关在网络建设上,大都采用物理隔离的方式,将内部网络与互联网隔开。但在日......
  • File类操作文件方法详解及其简单应用
    一、File类介绍Java中的File类是java.io包的一部分,它提供了操作文件和目录的能力。File类可以用来表示文件系统中的文件或目录。二、路径在讲File用法之前咱们先介绍一下路径是什么?在计算机中,路径(Path)是指文件或目录在文件系统中的位置。路径可以分为两种:绝对......
  • spring security 指定了 failureForwardUrl 的请求接口 但是没有效果
    springboot版本:3.3.0springsecurity版本:3.3.0代码如下:springsecurity配置类importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;importorg.springframework.security.config.annotation.web.builders......
  • 2024-05-29_二进制文件和文本文件作业
    1.关于文本文件和二进制文件描述错误的是?()A.文本文件是可以读懂的,二进制文件没办法直接读懂B.数据在内存中以二进制的形式存储,如果不加转换的输出到外存,就是二进制文件C.将内存中的数据转化成ASCII码值的形式,并以ASCII码值的形式存储的文件就是文本文件。D.文本文件和二......