2016-09-30 4 views
0

У меня есть сайт, который подключается с использованием cURL (последней версии) к нашему API-интерфейсу (IIS). Мое решение отлично работает для wamp и XAMPP, но проблема возникает в IISПроблема с CURL с IIS при получении данных

Я не могу получить данные на сервере API.

// Фрагменты кода

$ клиент = новый HttpClient();

$client->setAdapter('Zend\Http\Client\Adapter\Curl'); 

    $url = (isset($apiUrl) && $apiUrl != NULL) ? $apiUrl : CustomConstantsFunction::apiCommunityUrl(); 
    $client->setUri($url); 

    $headers = $client->getRequest()->getHeaders(); 
    $headers->addHeaderLine('Authorization', \Application\Functions\CustomConstantsFunction::encryptDecrypt('encrypt',$host.'-ZendCommunityProduct-'.$todayTimestamp)); 

    $client->setMethod('POST'); 

    $client->setParameterPOST($postData); 

    $client->setHeaders($headers); 
    $client->setOptions(array(
     'maxredirects' => 1, 
     'timeout'  => 300, 
     'curloptions' => array(
      CURLOPT_HEADER => 1, 
      CURLOPT_RETURNTRANSFER => true, 
      CURLOPT_SSL_VERIFYHOST => false, 
      CURLOPT_UNRESTRICTED_AUTH => TRUE, 
      CURLOPT_SSL_VERIFYPEER => FALSE, 
     ) 
    )); 
    $response = $client->send(); 
    $response = $response->getBody(); 
    $data = json_decode($response);   
    return $data; 

Я также попробовал cURL'ing разные сайты, и они возвращают контент в порядке, но они мне не помогают.

Неужели кто-нибудь еще испытал эту ошибку и знает работу?

Спасибо :)

ответ

0

Пожалуйста, попробуйте ниже апи URL

$url = (isset($apiUrl) && $apiUrl != NULL) ? $apiUrl."/" : CustomConstantsFunction::apiCommunityUrl(); 

А также изменили параметры $ клиента setOptions.

$client->setOptions(array(
     'maxredirects' => 2, 
     'timeout'  => 300 
    )); 

его работающий на меня. :)