سؤال

نحن نبحث عن إطار خدمات ويب C++ Soap يدعم RPC، ويفضل أن يكون مفتوح المصدر.أي توصيات؟

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

المحلول

WSO2 Web Services Framework for C++ (WSO2 WSF/C++)، ربط WSO2 WSF/C في C++ هو امتداد C++ لاستهلاك خدمات الويب في C++.

http://wso2.org/projects/wsf/cpp

Apache Axis هو إطار خدمة ويب مفتوح المصدر يعتمد على XML.وهو يتألف من تطبيق Java وC++ لخادم SOAP وأدوات مساعدة متنوعة وواجهات برمجة التطبيقات لإنشاء تطبيقات خدمة الويب ونشرها.

http://ws.Apache.org/axis/

نصائح أخرى

http://code.google.com/p/staff/

فريق العمل هو Web Service Framework لـ C++ (الخدمة/المكون وجانب العميل)/JavaScript (جانب العميل) استنادًا إلى Apache Axis2/C.

مفتوح المصدر، تم إصداره بترخيص Apache V2.0.

جرب ال ffead-cpp إطار العمل، فهو يوفر دعمًا مدمجًا لخدمة الويب والراحة وjson والعديد من الميزات المفيدة الأخرى.

نحن نستخدم EasySoap (http://easysoap.sourceforge.net/)

بينما لا توجد مكتبة أخرى مفتوحة المصدر ومفتوحة المصدر خادم ATL مكتبة من مايكروسوفت.إنه قالب C++ يعتمد على بعض السمات الخاصة بشركة Microsoft.أي.ليس معيار C ++

يمكنك التحقق من xmlbeansxx.هذا نوع من الحلول خفيفة الوزن ومنخفضة المستوى مقارنة بالأطر الكاملة.وهذا له مزايا في بعض الحالات.

استدعاء SOAP WebServices باستخدام مقالة xmlbeansxx

مثال الكود هنا:WsClient.cpp.

بامكانك ان تحاول gSOAP.متاح تحت GPL والتراخيص التجارية.

لقد استخدمت جرعة كبيرة لإنشاء واجهة من C++ إلى Java أو Python ثم استخدام دعم واجهة الويب النموذجية لتلك اللغات.

نظرًا لأن Java وPython تعكسان أطر عمل خدمات الويب الموجودة لهما، فإنها تتمتع بوقت أسهل بكثير في تمرير البيانات.

إذا كان كود C++ الخاص بك آمنًا، فيمكنك السماح لخادم Java بإدارة إنشاء سلاسل الرسائل للطلبات المتزامنة وما إلى ذلك.وقم فقط بالاتصال برمز C++ الخاص بك باستخدام JNI.

كمكافأة، يمكنك اختبار كود C++ الخاص بك من Python باستخدام نفس واجهات SWIG.

أعتقد أن الطريق الذي يجب اتباعه هو كتابة خدمتك بلغة C++ (أفترض أنك قمت بجميع الواجبات المنزلية وهناك سبب وجيه لرغبتك في الكتابة بلغة C++) ثم تقديمها باستخدام خادم RPC.استخدم شيئًا مثل Thrift أو Protobufs لتنفيذ RPC سريعًا.

الآن، اكتب الواجهة الأمامية للويب الخاصة بك باللغة التي تختارها - ستكون لغة python لغتي - وقم بإجراء مكالمات RPC للقيام بكل المهام الثقيلة.

POCO عن بعد يمنحك طريقة بسيطة جدًا لإنشاء خدمات ويب بلغة C++ من خلال إضافة تعليقات توضيحية لتعريفات فئة C++ بتعليقات خاصة وتشغيل منشئ الأكواد فوقها.إنه تجاري، ولكن يتم تسليمه مع كود المصدر الكامل.نسخة التقييم المجانية متاحة.يعمل على أنظمة التشغيل Windows وLinux وMac OS X وما إلى ذلك.

أتفق مع إجابة imjorge وأضيف أن هناك إصدار C/C++ من إطار عمل Axis2 (محور أكثر مرونة وقابل للتوسيع) يقوم بعمل SOAP عبر RPC وجميع أنواع الأشياء بما في ذلك مجموعة من مواصفات WS-*.

http://ws.Apache.org/axis2/c/

محور أباتشي-ج:سهل الاستخدام، ولكن يبدو مهجورا..ولا حتى صفحات التحميل تعمل لعدة أشهر

WSOF WSFCPP:تطوير التشغيل السريع السريع، سواء كان تنفيذًا مرتبطًا أو غير مرتبط، استنادًا إلى Apache AxisC ويبدو أن معظم المطورين الحاليين لـ Apache Axis هم من شركة WSOF.إلى جانب الإمكانات الكبيرة التي اكتشفتها، فقد اكتشفت تسربًا للذاكرة.

أستخدم حاليًا Gsoap وأداءه جيد جدًا.Gsoap "التدوين المختلط" بين أسلوب c القديم وبعض الممارسات (السيئة؟) لـ C++ يزعجني بعض الشيء ..ولكن هذا مجرد أثاث رمزي.

بوكو:هي مكتبة كاملة الميزات وحديثة (جافا؟) مثل المكتبة.إنه برنامج مفتوح المصدر، مرخص بموجب ترخيص Boost Software 1.0.سيتعين عليك كتابة بعض الأشياء من الصفر، ولكن مع دعم كبير وفئات فائدة ومكتبة رائعة وما إلى ذلك.الابتكارات من c++ 11+ مع جميع مبادرات التعزيز + POCO + نظام بناء/تبعية جديد أكثر "مثل Gradle" ستجلب بالتأكيد لغة C++ إلى مجالات جديدة من التطوير.

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