在使用 gSOAP 开发 SOAP 客户端和服务端时,确保所有涉及到 SOAP 消息的地方都设置了正确的编码模式,避免因为编码不一致而导致通信问题。
gSOAP 根据 WSDL 文件生成客户端和服务端代码。在生成代码后,需要手动修改生成的代码,确保在所有的 SOAP 消息创建和处理代码中设置使用 UTF-8 编码模式。
在 gSOAP 的使用中,可以使用 soap_set_mode
函数来设置编码模式为 SOAP_C_UTFSTRING
,即 UTF-8 编码模式。
soap_set_mode(soap, SOAP_C_UTFSTRING);
所有通过 gSOAP 发送的 SOAP 消息,在 XML 头部应包含正确的编码声明,例如:
<?xml version="1.0" encoding="UTF-8"?>