Я отправляю запрос 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 байта.
Как распечатать то, что я получаю ??
Вы можете использовать функцию обратного вызова, которая получает ответ. Вы можете найти пример здесь .