Frage

Wir suchen eine C ++ Soap Web Services Framework, das RPC unterstützen, vorzugsweise Open Source. Irgendwelche Empfehlungen?

War es hilfreich?

Lösung

WSO2 Web Services Framework für C ++ (WSO2 WSF / C ++), eine Bindung von WSO2 WSF / C in C ++ ist eine C ++ Erweiterung für das Konsumieren von Web Services in C ++.

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

Apache Axis ist ein Open Source, XML-basierte Web-Service-Framework. Es besteht aus einer Java und C ++ Implementierung des SOAP-Servers und verschiedenen Dienstprogramme und APIs zur Erstellung und Web-Service-Anwendungen bereitstellen.

http://ws.apache.org/axis/

Andere Tipps

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

Das Personal ist Web-Service-Framework für C ++ (Service / Komponente und clientseitig) / JavaScript (clientseitig), basierend auf Apache Axis2 / C.

Open Source, mit Apache License V2.0 veröffentlicht.

Versuchen Sie die ffead-CPP Rahmen, es bietet in integrierten Web-Service-Support, Ruhe, json und viele andere nützliche Funktionen.

Wir verwenden EasySoap ( http://easysoap.sourceforge.net/ )

Während nicht FOSS eine andere Bibliothek ist ATL Server Bibliothek von Microsoft. Es ist C ++ Vorlage basiert mit einigen proprietären Attribute von Microsoft. das heißt nicht Standard C ++

Sie können xmlbeansxx überprüfen. Dies ist eine Art von leichter, niedriger Niveau Lösung, im Vergleich zu einem vollständigen Rahmen. Dies hat Vorteile in einigen Fällen.

SOAP Aufrufen WebServices mit xmlbeansxx Artikel

Codebeispiel ist hier:

Sie könnten versuchen, gSOAP . Erhältlich unter GPL und kommerziellen Lizenzen.

Ich habe verwendet SWIG eine Schnittstelle von C ++ zu Java oder Python zu machen und verwenden dann die typische Web Schnittstelle Unterstützung für diese Sprachen.

Da Java und Python haben Reflektion, um die Web-Services-Frameworks, die für sie existieren haben eine viel einfachere Zeit um Daten übergeben.

Threading weise, wenn Ihr C ++ Code Thread-sicher ist, können Sie die Java-Server verwalten die Erstellung von Threads für die gleichzeitige Anfragen usw. lassen und rufen Sie einfach in Ihre C ++ Code JNI.

Als Bonus Sie Ihren C ++ Code aus Python mit diesem gleichen SWIG Schnittstellen testen können.

Ich denke, der Weg zu gehen ist Ihren Dienst in C ++ zu schreiben (ich nehme an, dass Sie alle Hausaufgaben gemacht und es gibt einen guten Grund, warum Sie in C ++ schreiben wollen) und dann vorne einen RPC-Server es zu benutzen. Verwenden Sie so etwas wie Thrift oder Protobufs für eine schnelle RPC-Implementierung.

Jetzt ist Ihren Web-Frontend in der Sprache Ihrer Wahl schreiben - Python würde meine sein -. Und RPC-Aufrufe all schweres Heben zu tun

POCO Remoting gibt Ihnen eine sehr einfache Möglichkeit, Web-Services zu schaffen, in C ++ von nur C ++ Klassendefinitionen mit speziellen Kommentaren mit Anmerkungen versehen und einen Code-Generator über sie läuft. Es ist kommerziell, aber mit vollständigem Source Code geliefert. Eine kostenlose eval-Version verfügbar ist. Läuft unter Windows, Linux, Mac OS X, etc.

ich mit imjorge Antwort übereinstimmen und füge hinzu, dass eine C / C gibt es ++ Version des Axis2 Rahmen (eine flexiblere, erweiterbare Achse), die SOAP über RPC und alle möglichen Sachen tut, die eine Reihe von der WS- * Spezifikationen.

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

Apache-Achse-c: Einfach zu bedienen, aber es scheint aufgegeben .. nicht einmal Download-Seiten für mehrere Monate

WSOF WSFCPP: Schnell Schnellstart-dev, binded beide oder keine binded Implementierung, basierend auf Apache AxisC und es scheint, die meisten der aktuellen Entwickler von Apache Axis ist von WSOF Unternehmen. Neben dem großen Potenzial habe ich einen Speicherverlust erkannt.

Ich bin derzeit gSOAP und es hat eine sehr gute Leistung. Gsoap „gemischte Schreibweise“ zwischen alten c-Stil und einige (sehr schlecht?) Praktiken für C ++ stört mich etwas .. aber das ist nur Code-Möbel.

POCO: Ist ein Full-Feature, modern (Java?) Wie Bibliothek. Es ist Open-Source-Software unter der Boost-Software-Lizenz 1.0. Es gibt einige Dinge aus scrach schreiben, aber mit großer Unterstützung, Utility-Klassen und etc großer Bibliothek .. Innovationen von c ++ 11 + mit allen Boost-Initiativen + POCO + ein neues Build / Abhängigkeitssystem mehr „gradle wie“ werden sicherlich c bringen ++ auf neue Bereiche der Entwicklung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top