2016-10-18 13 views
2

私は以下のJason Lattimerと同様のコードを使用していましたが、今は失敗します。私はもうwsdlで "識別子"を見つけることができます。誰でもこれについて支援を提供できますか?XRMServices/2011/Organization.svcから識別子を取得する問題

function GetADFS($url) { 
    $ch = curl_init(); 
    curl_setopt ($ch, CURLOPT_URL, $url . "XrmServices/2011/Organization.svc?wsdl=wsdl0"); 
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt ($ch, CURLOPT_TIMEOUT, 60); 
    curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false); 

    $response = curl_exec ($ch); 
    curl_close ($ch); 

    $responsedom = new DomDocument(); 
    $responsedom->loadXML ($response); 

    // **************************************************  
    // ************************************************** 
    // Can no longer find this Identifier 
    // ************************************************** 
    // ************************************************** 
    $identifiers = $responsedom->getElementsbyTagName ("Identifier"); 
    $identifier = $identifiers->item (0)->textContent; 

    return str_replace ("http://", "https://", $identifier); 
} 

答えて

0

それは、名前空間 'MS-XRM' にありますので、

$identifiers = $responsedom->getElementsbyTagNameNS ("ms-xrm","Identifier"); 

$identifiers = $responsedom->getElementsbyTagName ("Identifier"); 

を交換して確認してください。次に、実際のWSDLをチェックすると、このノードが表示されない場合は、そのノードがADFSを使用している場合にのみ使用できるため、CRMの設定に問題がある可能性があります。

+0

ありがとうございます!あなたは私の質問に答えました。私はADを使っていますが、ADFSは使っていません。内部AD配備のために類似したものを取得するにはどうすればよいですか? – Campey

+0

「何か似ている」とはどういう意味ですか? ADFSがなければ、「識別子」ノードはありません。 – pen2

+0

そのため、Active Directoryサーバーがフェデレーション設定ではない場合は、どうすれば見つけることができますか? – Campey

関連する問題