我正在尝试实现这个API方法并使用PHP cURL发送GET请求。
这是我的代码:
$url = 'https://crm.zoho.com/crm/private/xml/'.$module.'/'.$method.'?authtoken='.config('app.ZOHO_KEY').'&scope=crmapi&newFormat=1&id='.$record_id.'&xmlData='.$XML_data;
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_exec($ch);
URL 计算如下:
https://crm.zoho.com/crm/private/xml/Contacts/updateRecords?authtoken=XXXX&scope=crmapi&newFormat=1&id=2410575000000139003&xmlData= <Contacts> <row no="1"> <FL val="Email Opt Out">true</FL> </row> </Contacts>
但是,请求失败。我已经尝试过str_replace(' ', '%20', $url)
但这并不能解决问题。
我试过str_replace('', '%20', $url(
你做错了。任务的正确工具是urlencode((
编辑
您应该重构代码并通过常规 POST 请求发送此数据,这正是它的用途。