هل من الممكن إنشاء عميل دردشة على الويب بدون إطار عمل قائم على المقبس؟

StackOverflow https://stackoverflow.com/questions/1046606

سؤال

لقد سمعت أن عملاء الدردشة على شبكة الإنترنت يميلون إلى استخدام أطر عمل الشبكات مثل إطار ملتوي.

ولكن هل من الممكن إنشاء عميل دردشة على الويب بدون إطار عمل شبكي - باستخدام اياكس فقط روابط؟

أرغب في إنشاء عميل دردشة عبر الويب قائم على الجلسة ويستخدم الجلسات للإشارة إلى وقت انتهاء الدردشة.هل سيكون هذا ممكنًا في Rails باستخدام ajax فقط وبدون إطار عمل شبكي؟

ما هو تأثير استخدام إطار عمل الشبكات وما هو التأثير الذي قد يحدثه على تطبيقي لعدم استخدام إطار عمل؟كما سيكون موضع تقدير أي توصيات عامة للتعامل مع هذا المشروع.

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

المحلول

إذا فهمتك بشكل صحيح، فأنت تريد أن يتصل العملاء بخادمك ويرسلوا رسائل لبعضهم البعض من خلال ajax، عبر الخادم.هذا ممكن، هناك طريقتان للقيام بذلك.

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

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

أود أن أضيف أنه على الرغم من أن الأخير يعمل، إلا أنه ليس شيئًا مخصصًا لـ http وهو قليل من الاختراق، ولكن مهلا، أيًا كان ما ينجز المهمة.مثال عملي على ذلك هو مشروع دردشة القضبان الذي يستخدم مشتق الطاغوت.

نصائح أخرى

من الناحية الفنية، يحتوي كل تطبيق قائم على الشبكة على إطار عمل شبكي، وبالتالي فهو يعتمد على المقبس...

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

إذا كان الأمر لاحقًا، فيجب عليك السماح باتصالات TCP المباشرة بين العميلين وتحتاج إلى الاقتراب قليلاً من المعدن إذا جاز التعبير.

لذا اسأل نفسك هذا:هل تريد دفع تكاليف حركة المرور وتتحمل المسؤولية المحتملة عن الكشف عن كل ما قد يكتبه الأشخاص في عميلهم؛أم هل تفضل إنشاء برنامج دردشة يمكن للأشخاص استخدامه للتحدث مع بعضهم البعض؟

بالطبع، قبل أن تذهب إلى هذا الحد، هل تريد حقًا إنشاء عميل دردشة آخر؟هذه المساحة مزدحمة بالفعل.

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