Wir sind auf der Suche nach einem C++ Soap Web Services Framework, das RPC unterstützt, vorzugsweise Open Source. Irgendwelche Empfehlungen?
Antworten
Zu viele Anzeigen?Sie können sich xmlbeansxx ansehen. Dies ist eine Art leichtgewichtige Lösung auf niedriger Ebene, verglichen mit kompletten Frameworks. Das hat in einigen Fällen Vorteile.
Aufrufen von SOAP WebServices mit xmlbeansxx Artikel
Ein Codebeispiel finden Sie hier: WsClient.cpp .
Ich habe verwendet SWIG um eine Schnittstelle von C++ zu Java oder Python zu erstellen und dann die typische Webschnittstellenunterstützung für diese Sprachen zu nutzen.
Da Java und Python eine Reflexion haben, ist es für die dafür existierenden Webservice-Frameworks viel einfacher, Daten weiterzugeben.
Wenn Ihr C++-Code thread-sicher ist, können Sie die Erstellung von Threads für gleichzeitige Anfragen usw. dem Java-Server überlassen und Ihren C++-Code einfach über JNI aufrufen.
Als Bonus können Sie Ihren C++-Code von Python aus mit denselben SWIG-Schnittstellen testen.
Ich denke, der richtige Weg ist, Ihren Dienst in C++ zu schreiben (ich gehe davon aus, dass Sie alle Hausaufgaben gemacht haben und es einen guten Grund gibt, warum Sie in C++ schreiben wollen) und ihn dann mit einem RPC-Server zu öffnen. Verwenden Sie etwas wie Thrift oder Protobufs für eine schnelle RPC-Implementierung.
Schreiben Sie nun Ihr Web-Frontend in der Sprache Ihrer Wahl - Python wäre meine - und machen Sie RPC-Aufrufe, um alle schweren Aufgaben zu erledigen.
POCO-Fernsteuerung bietet Ihnen eine sehr einfache Möglichkeit, Webdienste in C++ zu erstellen, indem Sie einfach C++-Klassendefinitionen mit speziellen Kommentaren versehen und einen Codegenerator darüber laufen lassen. Es ist kommerziell, wird aber mit vollständigem Quellcode geliefert. Eine kostenlose Testversion ist verfügbar. Läuft unter Windows, Linux, Mac OS X, etc.