2013-07-19 9 views
-1

Lorsque je saisis une URL dans mon navigateur, elle renvoie une sortie détaillée. Cependant, lorsque j'essaie de le faire par une requête curl, la requête retourne un seul espace vide. Pourquoi cela se passe-t-il?curl php vide espace vide

URL

est https://api.500px.com/v1/users?oauth_token=AihBz6ZWedu3VxnQdy2tqWtbwV86wtOuXumhPapk&oauth_verifier=YhKo0kaGhfw0dFhparxU&consumer_key=0OvWThqr5j1ZYX1cPaa8y0y1aOfJBbDtpX85fJ42

Mon code est:

<!DOCTYPE html> 


<?php 



function fetchData($url) { 
      $ch = curl_init(); 
       curl_setopt($ch, CURLOPT_HEADER, 1); 
    curl_setopt($ch, CURLOPT_VERBOSE, 1); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
    curl_setopt($ch, CURLOPT_FAILONERROR, 0); 
    curl_setopt($ch, CURLOPT_URL, $url); 
    $returned = curl_exec($ch); 
    echo 'Errors: ' . curl_errno($ch) . ' ' . curl_error($ch) . '<br><br>'; 
    curl_close ($ch); 
    echo $returned; 
      return $returned; 
    } 


); 
     // Pulls and parses data. 

    $returned = fetchData("https://api.500px.com/v1/users?oauth_token=xElRwQ6cqItG8Siy9kFBpwkj5sCdlp33NRva5TZU&oauth_verifier=hbNdYnqm8BSyuiZYa4KZ&consumer_key=0OvWThqr5j1ZYX1cPaa8y0y1aOfJBbDtpX85fJ42"); 
    var_dump($returned); 
if(curl_exec($ch) === false) 
{ 
    echo 'Curl error: ' . curl_error($ch); 
} 
+0

L'URL que je suis me donne une page blanche – StephenTG

+0

@StephenTG Désolé les codes d'accès ne sont que bon temps, ce qui signifie que quelqu'un d'autre cliqué sur le lien. Je vais vous en envoyer un maintenant. – user2600095

+1

Cela sonne comme il pourrait être le problème ... – StephenTG

Répondre

0

S'il vous plaît utiliser CURLOPT_HEADER pour vérifier les en-têtes de réponse pour toute erreur.

+0

donc définir cette curl_setopt (curl $, CURLOPT_HEADER, true); ? – user2600095

+0

Je reçois ceci: Erreur HTTP 411 Longueur requise – user2600095

0

CURL en suivant le format -

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_HEADER, 0); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch,CURLOPT_POSTFIELDS,'client='.$number.'&order='.$orderId); 
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.3) Gecko/20070309 Firefox/2.0.0.3"); 
$data =curl_exec($ch); 
+0

quel est le point de curlopt_useragent? – user2600095

+0

Lorsqu'une URL est demandée via cURL, le serveur répond à la demande comme une demande envoyée via le navigateur. Cependant, la requête cURL par défaut ne spécifie pas les informations dont certains serveurs ont besoin pour valider une requête, par exemple. Agent utilisateur, langue, etc. – nks

+0

ce code ne fonctionne pas. Je l'ai modifié pour mon exmaple et il revient à 500px page qui dit oups il doit y avoir eu une erreur. – user2600095