0

LAN 経由で利用できるローカル Windows サーバーに SharePoint をインストールしました。今、私はローカルのApacheサーバーでphpでWebサービスを次のように実行しています:

<?php

//Authentication details
$authParams = array('login' => 'username', 'password' => 'password'); \

$listName = "TestList1";
$rowLimit = '150';
$wsdl = "http://www.blah.com/sharepoint/ListsWSDL.wsdl";

//Creating the SOAP client and initializing the GetListItems method parameters
$soapClient = new SoapClient($wsdl, $authParams);
$params = array('listName' => $listName, 'rowLimit' => $rowLimit);

//Calling the GetListItems Web Service
$rawXMLresponse = null;
try{
    $rawXMLresponse = $soapClient->GetListItems($params)->GetListItemsResult->any;
}
catch(SoapFault $fault){
    echo 'Fault code: '.$fault->faultcode;
    echo 'Fault string: '.$fault->faultstring;
}
echo '<pre>' . $rawXMLresponse . '</pre>';

//Loading the XML result into parsable DOM elements
$dom = new DOMDocument();
$dom->loadXML($rawXMLresponse);
$results = $dom->getElementsByTagNameNS("#RowsetSchema", "*");

//Fetching the elements values. Specify more attributes as necessary
foreach($results as $result){
    echo $result->getAttribute("ows_LinkTitle")."<br/>";
}
unset($soapClient);
?>
<body>
</body>
</html>

しかし、コントロールは次のように表示されるエラーでブロックをキャッチしようとしています:

Fault code: HTTPFault string: Unauthorized

なぜこうなった?

4

2 に答える 2

0

IIS で基本認証を有効にしましたか?

このリンクを見てください: http://blogs.iis.net/nitashav/archive/2010/02/22/iis6-0-ui-vs-iis7-x-ui-series-basic-authentication.aspx

資格情報を確認してください。

IIS 認証設定を Kerberos に変更してみてください。

于 2012-11-06T10:46:45.443 に答える
0

最初に WSDL ファイルを確認します。サーバーの場所は wsdl ファイルの一番下にあります。このサーバーの場所が正しいことを確認してください。

アクセスしようとしているこの共有ポイント サイトに対して、(IIS6 で) 「基本認証」を有効にしてください。

于 2012-11-06T10:45:41.933 に答える