سؤال

لدي صفحة ويب حيث يمكن للمستخدمين إنشاء سجل قاعدة بيانات وتحديد ملف يرغبون في تحميله على خادم قاعدة البيانات. يمكن أن تكون هذه الملفات كبيرة ، مثل 100 ميجابايت.

لا أريد أن ينتظر المستخدم ، لذلك أريد تحميل الملف في الخلفية. حتى يتمكنوا من الاستمرار في القيام بأشياء أخرى أثناء تحميل الملف.

هل البتات هي الطريق للذهاب لهذا؟ أم أن هذا فقط لتطوير fatclient؟ أي تعليمية جيدة؟

إذا لم تكن البت هي السبيل للذهاب ، فما هي خياراتي؟ مكالمة AJAX إلى الخدمات مع الموقع؟

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

المحلول

إذا كنت ، من خلال قول "يمكنهم الاستمرار في القيام بأشياء أخرى" ، يعني أنه يمكنهم القيام بطلبات Ajax الأخرى على نفس صفحة الويب (أي عدم التنقل بعيدًا عنها) ، يمكنك إنجاز ذلك باستخدام أي تحميل قائم على الفلاش (swfupload هو واحد من عديدة). هذا لا يتطلب أي شيء سوى بعض JavaScript <input type="file"> ومواد تحميل فلاش مضمنة.

إذا كنت تريد أن يكون المستخدم قادرًا على التنقل بعيدًا عن الصفحة التي تبدأ التحميل ، فلا يمكنك فعل ذلك حقًا داخل المتصفح ، على الأقل ليس حتى حتى WebSockets يتم تنفيذها بالكامل في جميع المتصفحات. حتى ذلك الحين ، سيكون الأمر صعبًا للغاية.

نصائح أخرى

لا أعتقد أن البتات ستقوم بالخدعة من أجلك. لم أستخدمها مطلقًا ، لكن لا يبدو أنه يمكن الوصول إليه عبر تطبيق ويب - يبدو أكثر ملاءمة لتطبيق عميل Windows أو خدمة Windows.

قد ترغب في التفكير في التحكم في تحميل Andrew Valums Ajax (http://valums.com/ajax-upload/) أو تحميل (http://www.uploadify.com/). هذان كل من عناصر تحكم jQuery Ajax (والتحميل يتطلب فلاش). أنا أعمل مع jQuery لتطوير تطبيقات الويب ، لذلك أنا جزء من عناصر التحكم هذه. لقد استخدمت التحكم في تحميل Valums للعديد من المشاريع وهو يعمل بشكل جيد للغاية. لم أستخدم التحميل في تطبيق الإنتاج الفعلي بسبب متطلبات الفلاش (لكنه يبدو لطيفًا للغاية). أنا متأكد من أن هناك أدوات تحميل AJAX أخرى لأطر JavaScript الأخرى.

آمل أن يساعد هذا!

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

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