file-upload-handling by aj-geddes/useful-ai-prompts
npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill file-upload-handling构建安全、健壮的文件上传系统,包含验证、清理、病毒扫描、高效的存储管理、CDN集成以及跨不同后端框架的适当文件服务机制。
最小工作示例:
# config.py
import os
class Config:
MAX_CONTENT_LENGTH = 50 * 1024 * 1024 # 50 MB
UPLOAD_FOLDER = 'uploads'
ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif', 'docx', 'doc'}
UPLOAD_DIRECTORY = os.path.join(os.path.dirname(__file__), UPLOAD_FOLDER)
# file_service.py
import os
import mimetypes
import hashlib
import secrets
from werkzeug.utils import secure_filename
from datetime import datetime
import magic
import aiofiles
class FileUploadService:
def __init__(self, upload_dir, allowed_extensions, max_size=50*1024*1024):
self.upload_dir = upload_dir
self.allowed_extensions = allowed_extensions
self.max_size = max_size
self.mime = magic.Magic(mime=True)
// ... (完整实现请参阅参考指南)
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
references/ 目录下的详细实现:
| 指南 | 内容 |
|---|---|
| Python/Flask File Upload | Python/Flask 文件上传 |
| Node.js Express File Upload with Multer | Node.js Express 使用 Multer 进行文件上传 |
| FastAPI File Upload | FastAPI 文件上传 |
| S3/Cloud Storage Integration | S3/云存储集成 |
每周安装数
125
代码仓库
GitHub 星标数
116
首次出现
2026年1月21日
安全审计
安装于
opencode104
gemini-cli102
codex100
cursor96
claude-code94
github-copilot86
Build secure and robust file upload systems with validation, sanitization, virus scanning, efficient storage management, CDN integration, and proper file serving mechanisms across different backend frameworks.
Minimal working example:
# config.py
import os
class Config:
MAX_CONTENT_LENGTH = 50 * 1024 * 1024 # 50 MB
UPLOAD_FOLDER = 'uploads'
ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif', 'docx', 'doc'}
UPLOAD_DIRECTORY = os.path.join(os.path.dirname(__file__), UPLOAD_FOLDER)
# file_service.py
import os
import mimetypes
import hashlib
import secrets
from werkzeug.utils import secure_filename
from datetime import datetime
import magic
import aiofiles
class FileUploadService:
def __init__(self, upload_dir, allowed_extensions, max_size=50*1024*1024):
self.upload_dir = upload_dir
self.allowed_extensions = allowed_extensions
self.max_size = max_size
self.mime = magic.Magic(mime=True)
// ... (see reference guides for full implementation)
Detailed implementations in the references/ directory:
| Guide | Contents |
|---|---|
| Python/Flask File Upload | Python/Flask File Upload |
| Node.js Express File Upload with Multer | Node.js Express File Upload with Multer |
| FastAPI File Upload | FastAPI File Upload |
| S3/Cloud Storage Integration | S3/Cloud Storage Integration |
Weekly Installs
125
Repository
GitHub Stars
116
First Seen
Jan 21, 2026
Security Audits
Gen Agent Trust HubPassSocketWarnSnykPass
Installed on
opencode104
gemini-cli102
codex100
cursor96
claude-code94
github-copilot86
agent-browser 浏览器自动化工具 - Vercel Labs 命令行网页操作与测试
159,700 周安装