Клиентская программа GSOAP выдает ошибку SOAP_SSL_ERROR при отправке сообщения запроса на веб-сервер - PullRequest
0 голосов
/ 15 января 2019

Я использую GSOP 2.8.74 для клиента веб-службы в Microsoft Visual Studio 2010 IDE, windows 10. Мне нужно общаться с веб-службами Fedex (https://www.fedex.com/en-us/developer/web-services/process.html#documentation) через клиентскую программу. Я создал заголовки и файлы CPP используя процедуру, упомянутую в GSOAP из файла FedEx WSDL, при отправке первого сообщения с запросом происходит сбой и выдается ошибка SOAP_SSL_ERROR.

Я попытался установить OPENSSL SDK в Windows, чтобы решить проблему, учитывая, что для связи с сервером Fedex требуется SSL. Я получил много ошибок компиляции при этом. Затем я подтвердил с FedEx, что они не требуют SSL-аутентификации от клиента.

struct soap* soap = soap_new();
soap->ssl_flags = SOAP_SSL_NO_AUTHENTICATION;

ns1__ProcessShipmentRequest*  processShipmentReqObj =
    soap_instantiate_ns1__ProcessShipmentRequest(soap, -1, NULL, NULL, NULL);
// code for creating request message.
soap_status soapRc;
ns1__ProcessShipmentReply processShipmentReplyObj;
soapRc = shipmentProxyObj.processShipment(NULL, NULL,
    processShipmentReqObj, processShipmentReplyObj); // this line returns error
// soapRc gets value 30 which is SOAP_SSL_ERROR

soapRc должно быть 0, что является SOAP_OK.

...