сделать выборку контактов с помощью Odata

Друзья помогите сделать простую выборку контактов с помощью Odata желательно средствами php. Я смог сделать подключение, ошибку не выдает, создает файл кук в той же папке где находится сам файл. Но вот что то сделать далее не получается, страница зависает. вот код подключения php

$url = "https://026537-sales-enterprise.bpmonline.com/ServiceModel/AuthService…";

$requestData["UserName"] = "user";

$requestData["UserPassword"] = "pass";

$jcres = json_encode($requestData);

$ch = curl_init($url);

curl_setopt($ch, CURLOPT_COOKIEJAR,'cookie.txt');

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");

curl_setopt($ch, CURLOPT_POSTFIELDS, $jcres);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_HTTPHEADER, array(

'Content-Type: application/json',

'Content-Length: ' . strlen($jcres))

);

$result = curl_exec($ch);

echo $result;

curl_close($ch);

далее я попытался создать активность и состряпал вот этот код

$urlGetCardInfo = "https://026537-sales-enterprise.bpmonline.com/0/ServiceModel/EntityData…";

$requestDataService["Title"] = "121121 12121 21212";

$requestDataService["Notes"] = "please, email to client@gmail.com and process the following request: clients request";

$requestDataService["OwnerId"] = "64844c83-c6c2-4eee-a0e9-e26cef529d2f";

$jcres = json_encode($requestDataService);

$ch = curl_init($urlGetCardInfo);

curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');

curl_setopt($ch, CURLOPT_COOKIEJAR,'cookie.txt');

$file = "cookie.txt";

$lines = file( $file );

$str =  $lines[6];

$prefix = "BPMCSRF";

$index = strpos($str, $prefix) + strlen($prefix);

$token = trim(substr($str, $index));

echo $token;

curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_HTTPHEADER, array(

        'Content-Type: application/json;odata=verbose',

      'BPMCSRF:' .  $token,

        'Content-Length: ' . strlen($jcres))

);

curl_setopt($ch, CURLOPT_HEADER, 1);

$result = curl_exec($ch);

curl_close($ch);

echo "

";

echo var_dump($result);

Код скорее всего не правильный в плане записи активности, но так же мне кажется что данные с куки тоже не правильно достаются, возможно

может есть у кого пример выборки или добавления?

Нравится

3 комментария
Лучший ответ

Примеры можно найти тут, тут и тут

Так же обратите внимание на этот пакет для работы из php с bpmonline

Примеры можно найти тут, тут и тут

Так же обратите внимание на этот пакет для работы из php с bpmonline

Григорий Чех,

Григорий спасибо за советы. В общем получилось конектиться к базе и добавлять в коллекции записи, теперь мучаюсь как сделать вывод из odata.

covboyrus,

А можете показать пример полный рабочий, тоже бьюсь, как выборку сделать

Показать все комментарии