أنابيب مسمّاة عبر الإنترنت
أرسل POST إلى مسار. أرسل GET من نفس المسار. البيانات تتدفق مباشرة من المُرسِل إلى المستقبل — لا bucket، لا S3، لا تخزين.
Terminal A — Sender
$ curl -T report.pdf \
…/pipe/my-report
[INFO] Waiting for receiver...
[INFO] Streaming to 1 receiver(s)...
[INFO] Transfer complete.
Terminal B — Receiver
$ curl \
…/pipe/my-report
-o report.pdf
% Total report.pdf
100 2.4M 100 2.4M 0 0 1.8M
البيانات تتدفق خلاله، لا إليه
كل بايت ترسله يصل إلى المستقبلين في الوقت الحقيقي. الخادم سلك، لا مستودع.
المصدر
مُرسل
خادم PIPE
تخزين صفري · حتى 256 مستقبل
المستقبل
مُستقبِل
المُرسِل يفتح
المُرسِل يرسل POST أو PUT إلى أي مسار. الخادم ينتظر — حتى 5 دقائق — حتى يتصل مستقبل.
البايتات تتدفق
البيانات تتدفق بايت بايت عبر الشبكة. لا تخزين مؤقت. لا ملفات مؤقتة. لا خطوة رفع.
المستقبلون يتصلون
المستقبلون يرسلون GET إلى نفس المسار ويسحبون البث الحي. حتى 256 مستقبل يمكنهم التوزيع.
تركيبات Pipe الشائعة
معظم الوصفات أمرا curl — أحدهما للإرسال والآخر للاستقبال.
ما يمكن تدفقه عبر أنبوب
أي نوع محتوى لا يمكن تنفيذه كسكربت يتدفق كما هو. أنواع MIME الخطرة تُعاد كتابتها.
application/octet-streamPUT ← GETملفات ثنائية وأرشيفات وصور
/api/v1/pipe/[path]text/plainPOST ← GETسجلات ومدخلات قياسية وإعداد وتدفقات مخرجات قياسية
/api/v1/pipe/[path]multipart/form-dataPOST ← GETرفع ملف من المتصفح (الجزء الأول فقط)
/api/v1/pipe/[path]video/webm، video/mp4PUT ← متصفحمشاركة الشاشة، فيديو مسجّل
/api/v1/pipe/[path]?videotext/event-stream (SSE)GET متفرجرصد التقدم، السرعة/الوقت المتبقي/الحالة
/api/v1/pipe/[path]?progresstext/html (معاد كتابته)PUT ← GETيُعاد كتابته إلى text/plain قبل الإعادة — XSS مُمنَع، البيانات لا تُفقَد
/api/v1/pipe/[path]ترويسات مخصصةPUT ← GETX-Hoody-Pipe وبيانات X-Piping تُعاد إعادة توجيه
/api/v1/pipe/[path]جميع نقاط النهاية على /api/v1/pipe/[path]. الاتجاه يصف من يكتب ومن يقرأ.
مبني للحجم
حدود صارمة مفروضة لكل خادم. HTTP 429 عند امتلاء السعة، HTTP 414 عندما تكون المسارات طويلة جداً.
256
الحد الأقصى للمستقبلين على مسار واحد
1,000
الاتصالات المعلّقة غير المُنشأة
1,000
البثوث المتزامنة الجارية
5 دقائق
TTL قبل طرد HTTP 408
1,024
الحد الأقصى لطول المسار بالأحرف
50
متفرجو التقدم لكل مسار
9 نقاط نهاية، أمران مهمان
POST أو PUT للإرسال. GET للاستقبال. كل شيء آخر هو رصد.
الرصد وواجهة المستخدم
{count, plural, =1 {# endpoint} other {# endpoints}'}GET /health → { status, activePipes }
نقل البيانات
{count, plural, =1 {# endpoint} other {# endpoints}'}POST or PUT to send · GET to receive
أمرا curl وتنتهي
لا SDK. لا إعداد مصادقة. لا حدود لحجم الملف. أطلق حاوية Pipe وابدأ النقل.