سؤال

أقوم ببناء خدمة باستخدام WCF وأحتاج إلى إرسال الصور. نظرت حولي حول كيفية القيام بذلك ووجدت أن ترميز BASE64 غالبًا ما يستخدم لإرسال البيانات الثنائية كنص. هل هذه ممارسة جيدة لإرسال الصور (حوالي 500 كيلو بايت)؟

هل كانت مفيدة؟

المحلول

هذه رسالة كبيرة حقًا ، ولكن نعم ، إذا كان عليك إرسالها ، فإن القاعدة 64 هي الطريق للذهاب. إذا كان لديك عملاء .NET فقط ، فيمكنك النظر في ترميز الرسائل الثنائية لتقليص الحجم لأسفل

نصائح أخرى

BASE64 يرمز بأمان البيانات الثنائية ، سيكون على ما يرام. فقط ضع في اعتبارك أنه يجعل حجم النقل أكبر بنسبة 30 ٪.

لماذا تحتاج إلى إرسال البيانات الثنائية كنص؟ يمكن لـ HTTP إرسال بيانات ثنائية ، لماذا لا تجعل صورتك متاحة عبر HTTP وإرسال عنوان URL في خدمة WCF الخاصة بك؟

لقد أرسلنا الصور / الملفات عبر WCF باستخدام صفائف البايت ، حتى عدة ميغابايت في الحجم.

يمكنك استخدام MTOM للملفات الكبيرة. نرى:

http://developers.de/blogs/damir_dobric/archive/2008/02/02/wcf-mtom-binary-transmission.aspx

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top