解决gSOAP开发中的序列化和反序列化类型不匹配的问题(No Deserializer found to deserialize)

用gSOAP开发完Google Search的Client端测试程序,一运行便跳出如下错误“No Deserializer found to deserialize a ':key' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.”而key正好是我传递给服务器的一个参数,在google中搜索了一下发现很多朋友都遇到了类似的问题,从理论上说了一大堆,整个归结为一句话,就是在序列化和反序列化是出现了类型不匹配的问题,但都没能给出一个具体的解决方法。咱也不绕弯子了,直接把解决办法列出来:用soapcpp2.exe编译头文件时加上参数-t,就这么简单!如果解决了你的问题希望你能顶一下。

这是加参数-t前的xml数据:

<key>D1QFHLLv3ntR/Zfw2J23Gy2v0Kp</key>

这是加参数-t后的xml数据:

<key xsi:type="xsd:string">D1QFHLLv3ntR/Zfw2J23Gy2v0Kp</key>

你应该注意到了:第二次的数据加上了表示类型的xsi:type="xsd:string"

你可能感兴趣的:(xml,String,Google,服务器,search,encoding)