Announcement

Collapse
No announcement yet.

C++ rest-sdk: get-reqest wird übersprungen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • C++ rest-sdk: get-reqest wird übersprungen

    Hallo, ich möchte ein request an einen Server schicken und die Daten, die zurück kommen verarbeiten. Auf der Suche nach den Möglichkeiten in C++ bin ich auf das Rest-SDK Codename: Casablanca gestoßen. Ich habe mir mehrer Beispiele auf verschienden Webseiten angesehen von denen aber viele Syntaxfehler bei mir anzeigten. Der Code den ich jetzt habe ist recht übersichtlich und soll ersstmal nur ein get-request senden und den Rückgabewert ausgeben. Das Programm springt aber gar nicht erst in die client.request Funktion. Kann mir jemand erklären was ich falsch mache oder wo der Fehler liegen könnte?


    Code:
    #include <Windows.h>
    #include <iostream>
    #include <sstream>
    #include <string>
    #include "cpprest/containerstream.h"
    #include "cpprest/filestream.h"
    #include "cpprest/http_client.h"
    #include "cpprest/json.h"
    #include "cpprest/producerconsumerstream.h"
    #include "cpprest/http_client.h"
    #include <string.h>
    #include <conio.h>
    
    using namespace std;
    using namespace web;
    using namespace web::json;
    using namespace web::http;
    using namespace web::http::client;
    using namespace utility;
    using namespace utility::conversions;
    
    
    int main() {
    
      http_client client(L"http://httpbin.org/ip");
    
      client.request(methods::GET).then([](http_response response)
      { 
        if(response.status_code() == status_codes::OK)
        {
          auto body = response.extract_string().get();    
          std::wcout << body;
          getch();
        }
      });
    
    
      return 0;
    }

  • #2
    Irgendwie sieht das Tutorial hier anders aus, als das bei dir. Würde einfach mal danach vorgehen
    https://casablanca.codeplex.com/wiki...ent%20Tutorial
    Christian

    Comment


    • #3
      Danke für deine schnelle Antwort. Leider bekomme ich direkt in den ersten Zeilen einen Fehler:

      "Es ist keine passende beutzerdefinierte Konvertierung von pplx::task<pplx::task::details::_BadContinuationPa ramType> in pplx::task<void> vorhanden"
      Attached Files

      Comment


      • #4
        Auf den Bildern ist nichts zu erkennen.
        Prüfe deine includes. Du hast jedenfalls im ersten Beitrag andere,als die im Beispiel
        Prüfe deine Libs. Ev. sind Libs hinzuzufügen
        und......muss das mit C/C++ sein?
        Christian

        Comment


        • #5
          Also im Endeffekt läuft es darauf hinaus, dass ein JSON-Objekt mittels Post an einen Server übergeben wird, der dann etwas zurück gibt. Wahrscheinlich ein XML-Dokument. Ja das muss mit C++ sein. Und glaub mir die Frage habe ich auch schon gestellt ^^ Leider ist bei mir in der Firma das komplette System in C++ geschrieben und das ganze soll dann wenn es mal laufen sollte dann direkt eingebunden werden. Falls du, oder jemand anderes, eine Idee hat dies einfacher zu machen bin ich gerne für Vorschläge offen
          Zuletzt editiert von ZarakiKen; 29.04.2014, 09:20.

          Comment


          • #6
            Reicht dann nicht das
            http://stackoverflow.com/questions/1...request-with-c
            Christian

            Comment

            Working...
            X