Как обернуть, вернуть и получить объект вектора <map <string, string>> в C ++ версии библиотеки xmlrpc-c? - PullRequest
1 голос
/ 19 июля 2011

Я использую библиотеку xmlrpc-c (http://xmlrpc -c.sourceforge.net) и пишу код как на стороне сервера, так и на стороне клиента.Я знаю, что xmlrpc предоставляет множество встроенных структур, таких как xmlrpc_c :: value_struct, но документы не могут помочь мне понять, как достичь моего объекта.

На сервере я пытаюсь вернуть структуру vector<map<string,string>>, ифрагмент кода выглядит следующим образом:

SomeDefaultMethod::execute(string const& methodName, xmlrpc_c::paramList const& paramList, xmlrpc_c::value* const retvalP)
{
    *retvalP = structure; // suppose the variable structure is of type vector<map<string,string> >
}

На стороне клиента я пытаюсь распечатать все значения с сервера, то есть вывести ключ каждой карты и значение всего вектора.

string const serverUrl("http://localhost:8183/RPC2");
string const methodName("webcommands.bulkpagestatus");
xmlrpc_c::clientSimple myClient;
xmlrpc_c::value result;
myClient.call(serverUrl, methodName, &result)
// do not know how to get the values then through result in this situation.

Кто-нибудь может дать мне пример кода C ++ или фиктивного кода с использованием xmlrpc-c для достижения моей цели?Я очень ценю вашу помощь!

1 Ответ

0 голосов
/ 19 июля 2011

Вам придется выполнять маршаллинг на стороне сервера и демаршаллинг на стороне клиента. Также известен как сериализация и десериализация.

Вы просите у нас много кода. Попробуйте поискать примеры кода для поиска в Google.

...