リモート ホストにある Microsoft Dynamics CRM 2011 Online からデータを取得しようとしています。(ブラウザから)手動でログインし、LinuxホストでPHPを実行するサーバーから実行すると機能しますが、もちろん、仲介なしでCRUD操作を認証して実行したい:) .
しかし、「オブジェクトがここに移動しました」と表示され続けます。認証用のページ。CURLOPT_FOLLOWLOCATION => 1 を設定すると、crm のログイン ページが表示されます。
誰かが状況を解決するための手がかりを提案できるなら...ありがとう!
<?php
$useragent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1";
$urlValue = "/LeadSet?$select=Address1_City,FirstName,LastName";
$username = "domain\user";
$pass = "pass";
$handle = curl_init();
curl_setopt_array($handle,
array (
CURLOPT_USERAGENT => $useragent,
CURLOPT_USERPWD => $username . ':' . $pass,
CURLOPT_HTTPAUTH => CURLAUTH_ANY,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_URL => 'https://myhost.com/xrmservices/2011/OrganizationData.svc',
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => $urlValue,
CURLOPT_RETURNTRANSFER => true,
)
);
$response = curl_exec($handle);
curl_close($handle);
header('Content-Type: text/plain;');
print_r($response);