ПланФикс API: Пример получения списка проектов на php — различия между версиями
Материал из ПланФикс
Seva (обсуждение | вклад) (Новая страница: «Простой пример получения списка проектов и вывод его. Из примера становится ясно назначе...») |
Seva (обсуждение | вклад) |
||
(не показано 8 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
+ | {{#seo: | ||
+ | |title=ПланФикс API: Пример получения списка проектов на php | ||
+ | |titlemode=append | ||
+ | |keywords=планфикс, проекты, апи, api | ||
+ | |description=Пример получения списка проектов на php | ||
+ | }} | ||
+ | |||
Простой пример получения списка проектов и вывод его. | Простой пример получения списка проектов и вывод его. | ||
− | + | ||
+ | |||
<source lang="php"> | <source lang="php"> | ||
<?php | <?php | ||
+ | <?php | ||
+ | |||
$api_server = 'https://api.planfix.ru/xml/'; | $api_server = 'https://api.planfix.ru/xml/'; | ||
− | $api_key = 'APIKey- | + | $api_key = 'APIKey-ВАШЕГО_ПРИЛОЖЕНИЯ';// |
− | + | $api_token = 'ТОКЕН_АВТОРИЗАЦИИ'; | |
− | |||
− | |||
− | $ | ||
− | + | /** получаем список доступных нам проектов и выводим его | |
+ | * используем функции на: http://goo.gl/E41Vv | ||
+ | */ | ||
+ | $requestXml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?><request method="project.getList"><account></account></request>'); | ||
− | $requestXml = | + | $requestXml->account = 'your_account'; |
+ | $requestXml->pageCurrent = 1; | ||
+ | // остальные параметры являются необязательными, поэкспериментируйте сами | ||
− | $ | + | $ch = curl_init($api_server); |
− | |||
− | |||
− | |||
− | + | curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); | |
− | + | curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // не выводи ответ на stdout | |
− | + | curl_setopt($ch, CURLOPT_HEADER, 1); // получаем заголовки | |
− | + | // не проверять SSL сертификат | |
− | + | curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); | |
− | $ | + | // не проверять Host SSL сертификата |
− | + | curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); | |
− | + | curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); | |
− | + | curl_setopt($ch, CURLOPT_USERPWD, $api_key . ':' . $api_token); | |
− | + | ||
− | + | curl_setopt($ch, CURLOPT_POST, true); | |
− | + | curl_setopt($ch, CURLOPT_POSTFIELDS, $requestXml->asXML()); | |
− | + | echo $requestXml->asXML(); | |
− | + | ||
− | $ | + | $response = curl_exec($ch); |
− | + | $error = curl_error($ch); | |
− | + | var_dump($error); | |
− | + | ||
− | + | $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE); | |
− | + | $responseBody = substr($response, $header_size); | |
− | $ | + | |
− | $ | + | curl_close($ch); |
− | $requestXml-> | ||
− | $requestXml-> | ||
− | |||
− | $ | ||
− | $ | ||
− | |||
− | |||
− | |||
− | |||
− | $ | ||
− | |||
− | $ | ||
− | $ | ||
− | |||
− | |||
− | + | var_dump($responseBody); | |
− | |||
− | |||
− | |||
?> | ?> | ||
+ | |||
</source> | </source> | ||
+ | |||
+ | |||
+ | == Перейти == | ||
+ | *[[ПланФикс API:Примеры вызова API на php]] |
Текущая версия на 13:00, 5 декабря 2019
Простой пример получения списка проектов и вывод его.
<?php
<?php
$api_server = 'https://api.planfix.ru/xml/';
$api_key = 'APIKey-ВАШЕГО_ПРИЛОЖЕНИЯ';//
$api_token = 'ТОКЕН_АВТОРИЗАЦИИ';
/** получаем список доступных нам проектов и выводим его
* используем функции на: http://goo.gl/E41Vv
*/
$requestXml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?><request method="project.getList"><account></account></request>');
$requestXml->account = 'your_account';
$requestXml->pageCurrent = 1;
// остальные параметры являются необязательными, поэкспериментируйте сами
$ch = curl_init($api_server);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // не выводи ответ на stdout
curl_setopt($ch, CURLOPT_HEADER, 1); // получаем заголовки
// не проверять SSL сертификат
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
// не проверять Host SSL сертификата
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, $api_key . ':' . $api_token);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $requestXml->asXML());
echo $requestXml->asXML();
$response = curl_exec($ch);
$error = curl_error($ch);
var_dump($error);
$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
$responseBody = substr($response, $header_size);
curl_close($ch);
var_dump($responseBody);
?>