[英]HTTP/1.1 401 Unauthorized error on calling EWS with GSOAP
我用c ++创建了一个GSOAP客户端应用程序来调用EWS方法。 我的EWS是一个https URL。我仅使用正确的凭据,但收到如下响应。
HTTP/1.1 401 Unauthorized Cache-Control: private Server: Microsoft-IIS/7.5 X-AspNet-Version: 2.0.50727 Set-Cookie: exchangecookie=b56b1f57339240a88983be18ce6a50ad; expires=Wed, 30-Jan-2013 10:59:16 GMT; path=/; HttpOnly WWW-Authenticate: Negotiate WWW-Authenticate: NTLM X-Powered-By: ASP.NET Date: Mon, 30 Jan 2012 10:59:16 GMT Connection: close Content-Length: 0
下面我给出了我的代码片段。
ExchangeServiceBindingProxy *proxy = new ExchangeServiceBindingProxy();
proxy->soap_endpoint = "https://xxxx/EWS/exchange.asmx";
proxy->userid = "xxxxx";
proxy->passwd= "xxxxx";
proxy->recv_timeout = 300;
proxy->send_timeout = 300;
proxy->version = ns3__ExchangeVersionType__Exchange2010;
soap_ssl_init();
if (soap_ssl_client_context(proxy,SOAP_SSL_NO_AUTHENTICATION, NULL, NULL, NULL,NULL,NULL)){ exit(1);}
请建议任何人可能是问题所在。
谢谢。
使用cc -DWITH_NTLM(或win上的/ DWITH_NTLM)重新编译源代码以启用gSOAP NTLM身份验证协议。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.