Создайте преимущество в Microsoft Dynamics Nav 365 из PHP CURL

Всем доброе утро,

Я пытаюсь создать ведущую сущность в Microsoft Dynamics NAV 365 из сценария php CURL. Однако я продолжаю получать «Ошибка HTTP 401 — неавторизовано: доступ запрещен» в моем ответе CURL. Я могу, однако, создать лидерство через веб-интерфейс в порядке.

Я создал свой объект из тип ведущего объекта как описано на веб-сайте документации MSDN.

Ниже мой код:

$lead = array('person' =>
array(
'topic'                 => 'WEB LEAD',
'name'                  => $fullname,
'firstname'             => $firstname,
'lastname'              => $lastname,
'companyname'           => $company,
'telephone1'            => $telephone,
'emailaddress1'         => $email,
'description'           => $comment,
),
);

$dynamics =  $url . '/api/data/v8.2/leads';
$ch = curl_init($dynamics);

$options = array(
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json; charset=utf-8',
'OData-MaxVersion: 4.0',
'OData-Version: 4.0',
'Accept: application/json',
),
CURLOPT_HEADER => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_USERPWD, 'username:password',
CURLOPT_POSTFIELDS => json_encode($lead),
);

curl_setopt_array($ch, $options);
$response = curl_exec($ch);
$responseInfo = curl_getinfo($ch);
curl_close($ch);

0

Решение

Вам необходимо предварительно получить токен авторизации от AAD

После того, как вы получите весь токен, вам нужно добавить авторизацию в заголовок http запроса.

CURLOPT_HTTPHEADER => array(
'Content-Type: application/json; charset=utf-8',
'OData-MaxVersion: 4.0',
'OData-Version: 4.0',
'Accept: application/json',
'Authorization: <put the token here completly with name>',
),
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]