ما هي أفضل طريقة لجعل عميل .net يستهلك الخدمة من خادم Java؟

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

  •  09-06-2019
  •  | 
  •  

سؤال

لدي واجهة مستخدم في .net تحتاج إلى تلقي البيانات من الخادم، وفقًا لنموذج الطلب/الرد/التحديث.القيد الوحيد هو استخدام Java فقط على صندوق الخادم.

ما هو النهج الأفضل لتحقيق ذلك؟هل يتم ذلك عن طريق إنشاء خدمة ويب في Java ثم الوصول إليها في .net، أم يجب علي إنشاء وكلاء Java وتحويلهم إلى .net باستخدام IKM؟أو هل لديك أي فكرة أفضل؟يمكن أن يعتمد على HTTP، أو يستخدم اتصال مأخذ توصيل مباشر، أو أي برنامج وسيط.

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

المحلول

أوصي بمسار خدمة الويب.إنه يوفر واجهة قياسية يمكن أن تستهلكها منصات العملاء الأخرى في المستقبل.

يتفاعل عملاء .NET مع خدمات ويب Java بشكل جيد، على الرغم من وجود بعض الأخطاء.أفضل تقنيتين متاحتين لك لعميل .NET هما Microsoft Web Service Enhancements (WSE) وWindows Communication Foundation (WCF).WSE هي تقنية قديمة لم تعد يتم تحديثها بواسطة Microsoft، ولكنها لا تزال تعمل بشكل رائع في Visual Studio 2005 والإصدارات الأقدم.أجد أن البدء باستخدام WSE أسهل قليلاً فيما يتعلق بكيفية التفاعل مع الخدمات الأساسية، ولكن WCF لديه دعم أكبر بكثير لبروتوكولات WS-* (الأمان، والثقة، وما إلى ذلك).إذا كانت احتياجاتك أساسية وكنت لا تزال تستخدم Visual Studio 2005 (.NET Framework 2 أو أقدم)، فانتقل إلى WSE.إذا كنت تحب أحدث التقنيات، أو كنت تتوقع المزيد من الاحتياجات الأمنية المتقدمة (لا يبدو أنك ستفعل ذلك)، فانتقل إلى WCF.يرجى ملاحظة أن WSE لن يعمل بسهولة في Visual Studio 2008 والإصدارات الأحدث، ولن يعمل WCF في Visual Studio 2005 والإصدارات الأقدم.

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

نصائح أخرى

اكتب خدمة الويب بلغة Java وقم بالوصول إليها عبر .net

استخدام نوع قياسي من خدمة الويب (على سبيل المثال.SOAP أو XML-RPC) هو الأفضل لأنه ليس من السهل إنتاجه/استهلاكه فحسب، بل إنه سهل أيضًا في اللغات الأخرى.

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