Как проверить SOAP-ответ с помощью libcurl - PullRequest
0 голосов
/ 13 сентября 2011

Я отправляю запрос SOAP в веб-службу и хочу проверить, какой ответ я получил.Как этого добиться?

Мой код:

#include <stdio.h>
#include <curl/curl.h>

int main(void)
{
  CURL *curl;
  CURLcode res;


const char *temp = "<?xml version=\"1.0\" encoding=\"utf-8\"?> <S:Envelope xmlns:S=\"http://schemas.xmlsoap.org/soap/envelope/\"xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"xmlns:tns=\"http://ThermodynamicProperties/\"><S:Body> <tns:getSpeciesInformation> <speciesSymbol>CO2</speciesSymbol> <phase>GAS</phase> </tns:getSpeciesInformation> </S:Body> </S:Envelope>";

printf("%s",temp);

curl = curl_easy_init();
  if(curl) {
    /* First set the URL that is about to receive our POST. This URL can
       just as well be a https:// URL if that is what should receive the
       data. */ 
    curl_easy_setopt(curl, CURLOPT_URL, "http://thermo.sdsu.edu/servlet/ThermodynamicProperties/ThermodynamicPropertiesService");
    /* Now specify the POST data */ 
    curl_easy_setopt(curl, CURLOPT_POSTFIELDS, temp);

    printf("OK \n");

    /* Perform the request, res will get the return code */ 
    res = curl_easy_perform(curl);

      /* always cleanup */ 
    curl_easy_cleanup(curl);
  }
  return 0;
}

Сейчас я получаю ответ:

Отправка запроса.Чтение ответа.Получено 123 байта.

Как распечатать то, что я получаю ??

1 Ответ

0 голосов
/ 19 декабря 2011

Вы можете использовать функцию обратного вызова, которая получает ответ. Вы можете найти пример здесь .

...