Невозможно запустить Rest API, используя Php и Curl - PullRequest
2 голосов
/ 22 января 2020

Я создал Zoho API, который использовал Версию 1, теперь они мигрируют во Версию 2, Мой код версии 1 php, использующий функцию curl, работает отлично, что упомянуто ниже,

<?php
$auth="a5014536e7303c218e983f9b2da7ae00";
$xml= "
<Leads>
<row no="1">
<FL val="City">Chennai</FL>
</row>
</Leads>
";
$result = insert($auth,$xml);
print_r($result);

function insert($auth,$xml)
{
$curl_url ="https://crm.zoho.in/crm/private/xml/Leads/insertRecords";
$curl_post_fields= "authtoken=".'$auth'.&scope=crmapi&xmlData=".$xml."";
$ch = curl_int();
curl_setopt( $ch, CURLOPT_URL, $curl_url);
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION,true);
curl_setopt( $ch, CURLOPT_TIMEOUT,60);
curl_setopt( $ch, CURLOPT_POST,1);
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER,true);
curl_setopt( $ch, CURLOPT_POSTFIELDS,$curl_post_fields);
$response= curl_exec($ch);
curl_close($ch);
return $response;
}
?> 

Но когда я перехожу ко второй версии, используя документацию ZOHO Документация API 1 Документация API 2 Он не запускается, я не знаю, почему в некоторых случаях выдается ошибка белого экрана В некоторых случаях ошибка 500 ниже Код версии 2.

<?php
   $apiUrl = "https://www.zohoapis.com/crm/v2/Leads/";

$fields = json_encode(array("data" => array(["City" => "Egham"])));

$headers = array(
    'Content-Type: application/json',
    'Content-Length: ' . strlen($fields),
    'Authorization: Zoho-oauthtoken 4869c41171910edf553c07461c59a059',

);


$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $apiUrl);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
$response = curl_exec($ch);
curl_close($ch);
return $response;
?>

Может кто-нибудь сказать мне, что я делаю неправильно, или может помочь мне изменить код?

1 Ответ

1 голос
/ 22 января 2020

Заменить URL API с

$apiUrl = "https://www.zohoapis.com/crm/v2/Leads/";

на

$apiUrl = "https://www.zohoapis.com/crm/v2/Leads";
...