sitepoint - mp3 mime type




نوع الملف غير معروف MIME؟ (2)

هل يتعين علي تحديد نوع MIME إذا كان الملف الذي تم تحميله لا يحتوي على امتداد؟ وبعبارة أخرى هناك نوع MIME الافتراضي الافتراضي؟


موارد RFC:

يجب أن نستخدم RFC-7231 (دلالات ومحتوى HTTP / 1.1) كمرجع بدلاً من RFC-2046 (أنواع الوسائط) لأن السؤال كان بوضوح عن HTTP Content-Type.

أيضا لا يعرف RFC-2046 بوضوح أنواع غير معروفة ولكن RFC-7231 يفعل.

اجابة قصيرة:

لا ترسل نوع MIME للبيانات غير المعروفة.
لتكون أكثر وضوحا: لا تستخدم رأس نوع المحتوى على الإطلاق.

المراجع:

RFC-7231
Hypertext Transfer Protocol (HTTP / 1.1): دلالات المحتوى والمحتوى
3.1.1.5. نوع المحتوى

يجب على المرسل الذي يولد رسالة تحتوي على جسم حمولة
إنشاء حقل رأس Content-Type في تلك الرسالة ما لم يكن
نوع وسائل الإعلام المقصود من التمثيل المغلق غير معروف لل
مرسل.

هذا القسم يخبرك بوضوح بتركه إذا كنت لا تعرفه بالتأكيد. كما أنه يخبرنا أن جهاز الاستقبال يمكن أن يفترض أن هذا النوع هو تطبيق / تيار ثماني ، ولكن الشيء هو أنه قد يكون شيئًا آخر.

ما هو مختلف إذن؟

RFC-2046
4.5.1. Octet-Stream Subtype

الإجراء الموصى به للتنفيذ الذي يتلقى
كيان "application / octet-stream" هو ببساطة تقديم البيانات
في ملف ، مع أي التراجع عن المحتوى-تحويل-ترميز ، أو ربما إلى
استخدامه كمدخل لعملية محددة من قبل المستخدم.

وكما سبق ذكره أعلاه:

RFC-7231
3.1.1.5. نوع المحتوى

إذا لم يكن حقل رأس Content-Type موجودًا ، فسيتخذ المستلم إما نوع وسائط "application / octet-stream"
([RFC2046] ، القسم 4.5.1) أو فحص البيانات لتحديد نوعه.

استنتاج:

إذا قمت بتعريفه كـ "application / octet-stream" ، فأنت تخبرك أنك تعرف أنه "application / octet-stream".

إذا كنت لا تعرف ذلك فأنت تقول أنك لا تعرف ما هو عليه وترك القرار إلى المتلقي والمتلقي يمكن بعد ذلك التحقق مما إذا كان يمشي مثل البط و ...


أنا أفضل application/unknown ، ولكن النتيجة ستكون بالتأكيد نفس application/octet-stream