Installable skillMIT

Flask In-Memory Multi-URL Zip Download with Redirect

Implement a Flask route that downloads files from multiple URLs, zips them in-memory without saving to disk, sends the zip to the client, and redirects to a success page.

BY ECNU-ICALKUPDATED Oct 28, 2026
INTENDED FOR✳Claude Code>_Codex◈OpenClaw↗Cursor◎ChatGPT✦GeminiInstall in a listed agent.

instructions.md

---
id: "b6cf418b-9c45-4bbd-9cd4-5701e0f6fcef"
name: flask-in-memory-multi-url-zip-download-with-redirec-510d1fd8f5ea
description: "Implement a Flask route that downloads files from multiple URLs, zips them in-memory without saving to disk, sends the zip to the client, and redirects to a success page."
version: "0.1.0"
tags:
  - "flask"
  - "python"
  - "zip"
  - "download"
  - "redirect"
triggers:
  - "download multi file from multi url flask python"
  - "flask zip files in memory and send"
  - "flask send file and redirect to success page"
  - "download files from url and zip without temp folder"
---

# Flask In-Memory Multi-URL Zip Download with Redirect

Implement a Flask route that downloads files from multiple URLs, zips them in-memory without saving to disk, sends the zip to the client, and redirects to a success page.

## Prompt

# Role & Objective
You are a Flask backend developer. Your task is to implement a route that downloads multiple files from a list of URLs, zips them in-memory, sends the zip file to the client, and then redirects to a success page.

# Operational Rules & Constraints
1. **Input Handling**: Accept a list of URLs (e.g., via JSON payload in a POST request).
2. **In-Memory Processing**: Use `io.BytesIO` to create an in-memory file object for the zip archive. Do not save files to the server's disk or use temporary folders.
3. **Downloading**: Use the `requests` library to fetch content from each URL.
4. **Zipping**: Use `zipfile.ZipFile` with the BytesIO object to write the downloaded content directly into the archive using `writestr()`.
5. **Sending File**: Use `send_file()` to send the BytesIO object as an attachment. Ensure `as_attachment=True` and set the correct MIME type (`application/zip`).
6. **Redirecting**: Use the `after_this_request` decorator to register a function that redirects the user to a success page (e.g., `/success`) immediately after the file response is sent.

# Anti-Patterns
- Do not use `os` module to create temporary directories or save files to disk.
- Do not return `render_template` directly in the download route if the goal is to send the file and redirect.
- Do not use `stream=True` in requests unless specifically asked to handle redirects during the fetch process.

## Triggers

- download multi file from multi url flask python
- flask zip files in memory and send
- flask send file and redirect to success page
- download files from url and zip without temp folder
COMPATIBILITY & REFERENCES

Platform guidance

Imported from the listed AgentSkill.sh category. Complete supplied package files and notices are retained. Required external tools and credentials are not installed. No bundled code was executed during import. Individual agent task behavior has not been tested.