【问题标题】:HTTP/1.1 401 Unauthorized error on calling EWS with GSOAPHTTP/1.1 401 使用 GSOAP 调用 EWS 时出现未经授权的错误
【发布时间】:2012-02-22 06:13:26
【问题描述】:

我用 C++ 创建了一个 GSOAP 客户端应用程序,用于调用 EWS 方法。我的 EWS 是一个 https URL。我只使用了正确的凭据,但得到的响应如下。

HTTP/1.1 401 未经授权 缓存控制:私有 服务器:Microsoft-IIS/7.5 X-AspNet-版本:2.0.50727 设置Cookie:exchangecookie=b56b1f57339240a88983be18ce6a50ad;到期=格林威治标准时间 2013 年 1 月 30 日星期三 10:59:16;路径=/; HttpOnly WWW-认证:协商 WWW-认证:NTLM X-Powered-By: ASP.NET 日期:2012 年 1 月 30 日星期一 10:59:16 GMT 连接:关闭 内容长度:0

下面我给出了我的代码 sn-p。

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);}

请向任何人提出可能是什么问题。

谢谢。

【问题讨论】:

    标签: c++ web-services exchangewebservices gsoap


    【解决方案1】:

    使用 cc -DWITH_NTLM(或 win 上的 /DWITH_NTLM)重新编译源代码以启用 gSOAP NTLM 身份验证协议。

    【讨论】:

    • 嗨!亚历克斯。也许你能帮助我。我只是不明白如何使用 gSoap EWS 代理类。可以看看我的问题^link
    猜你喜欢
    • 2021-05-04
    • 1970-01-01
    • 2018-10-20
    • 1970-01-01
    • 1970-01-01
    • 2020-04-12
    • 2020-12-17
    • 2014-11-03
    • 1970-01-01
    相关资源
    最近更新 更多