Files
SnapOtter/apps/docs/ar/tools/files/extract-zip.md
T
SnapOtterandGitHub 4963ab3bbd feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2026-07-11 13:52:47 +08:00

2.0 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
استخراج الملفات بأمان من أرشيف ZIP مع الحماية من قنابل الضغط. 484a1f1051b8 human 206f003849a5

استخراج ZIP

استخرج الملفات بأمان من أرشيف ZIP. تُرجع الأرشيفات ذات الملف الواحد الملف المُحتوى مباشرةً؛ وتُرجع الأرشيفات متعددة الملفات ملف ZIP مسطّحًا يضم المحتويات المستخرجة.

نقطة نهاية API

POST /api/v1/tools/files/extract-zip

يقبل بيانات نموذج متعدد الأجزاء تحتوي على ملف ZIP. لا يلزم حقل إعدادات.

المعاملات

ليس لهذه الأداة معاملات قابلة للتهيئة. ارفع ملف .zip لاستخراجه.

مثال على الطلب

curl -X POST http://localhost:1349/api/v1/tools/files/extract-zip \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@archive.zip"

مثال على الاستجابة

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/archive_extracted.zip",
  "originalSize": 2800000,
  "processedSize": 3500000
}

ملاحظات

  • تُقبل ملفات .zip فقط كدخل.
  • إذا احتوى الأرشيف على ملف واحد، يُرجع ذلك الملف مباشرةً (دون تغليفه في ZIP).
  • إذا احتوى الأرشيف على ملفات متعددة، يُرجع ZIP مسطّح بجميع الملفات المستخرَجة إلى المستوى الجذري (تُسطَّح بنية الأدلة المتداخلة).
  • ترفض الحماية المدمجة من قنابل الضغط الأرشيفات ذات نسب الضغط المفرطة أو أعداد الملفات المفرطة لمنع استنزاف الموارد.