我正在尝试使用我在此处找到的类对Exchange服务器进行SOAP调用:
http://code.google.com/p/php-ews/
我已经编写了几个示例,从下面的基本示例开始,无论我尝试做什么,都会返回null。
$ews = new ExchangeWebServices('exchange.example.com', 'user', 'password');
$request = new EWSType_FindFolderType();
$request->Traversal = EWSType_FolderQueryTraversalType::SHALLOW;
$request->FolderShape = new EWSType_FolderResponseShapeType();
$request->FolderShape->BaseShape = EWSType_DefaultShapeNamesType::ALL_PROPERTIES;
$request->IndexedPageFolderView = new EWSType_IndexedPageViewType();
$request->IndexedPageFolderView->BasePoint = 'Beginning';
$request->IndexedPageFolderView->Offset = 0;
$request->ParentFolderIds = new EWSType_NonEmptyArrayOfBaseFolderIdsType();
$request->ParentFolderIds->DistinguishedFolderId = new EWSType_DistinguishedFolderIdType();
$request->ParentFolderIds->DistinguishedFolderId->Id = EWSType_DistinguishedFolderIdNameType::INBOX;
$response = $ews->FindFolder($request);
var_dump($response);有没有其他人遇到过这个错误,或者可以为我解释一下?
发布于 2011-09-26 14:55:12
您的请求看起来很好,应该可以工作。你用你的EWS服务器地址设置services.wsdl了吗?(有关详细信息,请参阅http://ewswrapper.lafiel.net/basic-info/working-with-ewswrapper/ )
尝试在发送之前查看实际调用,并在解释之前查看响应。要在NTMLSoapClinet.php中执行此操作,请在__doRequest()函数的顶部打印$request,并结束脚本执行(即.die()),然后在__doRequest()函数中返回$response之前尝试打印它,并结束脚本执行。这应该会让您对正在发生的事情有更多的了解。
https://stackoverflow.com/questions/7529388
复制相似问题