2016-04-07 17 views
2

Bir web sayfasında, gönderildiğinde Microsoft Dynamics CRM'ye veri gönderen formu uygulamam gerekiyor. Verilerin belirli bir kuruma kaydedilmesi gerekiyor.Microsoft Dynamics CRM ve PHP/JSON

CRM sunucusuyla iletişim kurmak için curl kullanan basit bir PHP betiği oluşturdum ancak her zaman yetkilendirmenin başarısız olduğunu belirten 401 durum kodu alıyorum.

define('MS_CRM_URL', 'https://______.crm.dynamics.com/'); 
define('MS_CRM_USER', '[email protected]'); 
define('MS_CRM_PASS', 'password'); 
$method = '/api/data/v8.0/accounts?$select=name&$top=3'; 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, MS_CRM_URL . $method); 
curl_setopt($ch, CURLOPT_USERPWD, MS_CRM_USER .':'. MS_CRM_PASS); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_POSTFIELDS, array(

)); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Accept' => 'application/json', 
    'OData-MaxVersion' => '4.0', 
    'OData-Version' => '4.0', 
    'Content-Type' => 'application/json', 
)); 

$server_output = curl_exec($ch); 
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); 

curl_close($ch); 

$json = array(); 
if ((int)$status_code === 200) { 
    $json = json_decode($server_output); 
} 

echo '<pre>'; 
var_dump($status_code); 
var_dump($json); 
echo '</pre>'; 

$method var içerikleri yerde Microsoft dokümantasyon sitesinde buldum bir örnek alınır. Belgeler bana çok yardımcı olmadı.

cevap

0

SOAP Kimlik Doğrulaması'nı kullanarak bunu yapabilirsiniz. Dynamics 365'e PHP web sitesinden çevrimiçi veri göndermemiz gereken aynı gereksinim var. Aşağıdaki kaynak kodunu kullanarak aşağıdaki bağlantıyı başardım: https://bitbucket.org/nigelheap/msdynamicsphp-master

İlgili konular