2014-11-25 4 views
0

CRM Online을 Drupal 웹 사이트에 연결해야한다는 요구 사항이있었습니다. 커스텀 웹 서비스를 작성하지 않아 CRM SOAP 인터페이스와 PHP를 사용했습니다.CRM 온라인 SOAP 끝점

지난 몇 달 동안이 작업이 잘 진행되었지만 약간의 작업이 중단되었습니다. 인증을 위해 필요한 토큰을 검색 할 수 있지만 응답을 보내지 않으면 응답이 비어 있습니다.

다른 사람이이 문제를 보거나 가장 좋은 방향으로 나에게 어떤 일이 일어나고 있는지 파악할 수 있습니다.

답변

0

답변을 발견했습니다.

다음은

$cURLHandle = curl_init(); 
curl_setopt($cURLHandle, CURLOPT_URL, $soapUrl); 
curl_setopt($cURLHandle, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($cURLHandle, CURLOPT_TIMEOUT, 60); 
curl_setopt($cURLHandle, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt($cURLHandle, CURLOPT_FOLLOWLOCATION, TRUE); 
curl_setopt($cURLHandle, CURLOPT_SSLVERSION, 3); 
curl_setopt($cURLHandle, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); 
curl_setopt($cURLHandle, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($cURLHandle, CURLOPT_POST, 1); 
curl_setopt($cURLHandle, CURLOPT_POSTFIELDS, $request); 
$response = curl_exec($cURLHandle); 
curl_close($cURLHandle); 

두 가지 내가 여기에 고정 될 필요가 내 코드의 스냅 샷입니다. 난 정말이

if(! $response = curl_exec($cURLHandle)) 
{ 
    trigger_error(curl_error($cURLHandle)); 
} 

과 함께이 라인을

$response = curl_exec($cURLHandle); 

를 교체해야하며, 둘째로이 수정 된 사용되는 SSL 버전이 표시되는 위치에 문제가 여기에있을 때 첫째로 나는 아무것도하지 않았다. 이 줄을 변경하여

curl_setopt($cURLHandle, CURLOPT_SSLVERSION, 3); 

3 대신 4 버전으로 작업하기 시작했습니다. 그래서이 대신 나는이 줄을 완전히 주석 처리했습니다.

희망이 있으면 다른 사람에게 도움이됩니다.

관련 문제