2011-04-07 3 views
1

Je suis tombé sur des problèmes en utilisant une connexion authentifiée. Je ne veux pas récupérer les messages privés qui sont marqués avec un tag spécifique. Actuellement, je reçois le statut 200 avec un message d'erreur vide et je ne peux rien faire de plus. Le code (presque la même que dans vos documents:Comment se connecter avec CURL à Tumblr API avec authentification

$request_data = http_build_query(array('email'=>$thumblr['email'],'password'=>$thumblr['pass'])); 
//$c = curl_init("http://".$thumblr['acc_name'].".tumblr.com/api/read?tagged=".$thumblr['the_tag']); 
$c = curl_init("http://www.tumblr.com/api/authenticate"); 
curl_setopt($c, CURLOPT_POST, true); 
curl_setopt($c, CURLOPT_POSTFIELDS, $request_data); 
curl_setopt($c, CURLOPT_RETURNTRANSFER, true); 
$result = curl_exec($c); 
$status = curl_getinfo($c, CURLINFO_HTTP_CODE); 
curl_close($c); 

if ($status == 201) { 
echo "Success! The new post ID is $result.\n"; 
} else if ($status == 403) { 
echo 'Bad email or password'; 
} else { 
echo "Error [$status]: $result\n"; 
} 

Et la sortie est:

Error [200]: 

Aide :)

+0

Le code d'état 200 n'est pas une erreur. Ça veut dire ok. http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html Cela aide-t-il d'une certaine façon? – kek

Répondre

2

Zut, je l'ai moi-même ...

$request_data = http_build_query(
    array(
     'email'  =>$thumblr['email'], 
     'password' =>$thumblr['pass'], 
     'id'    =>$thumblr['header_id'], 
     'tagged'  =>$thumblr['the_tag'] 
    ) 
); 
$c = curl_init('http://'.$thumblr['acc_name'].'.tumblr.com/api/read'); 
curl_setopt($c, CURLOPT_POST, true); 
curl_setopt($c, CURLOPT_POSTFIELDS, $request_data); 
curl_setopt($c, CURLOPT_RETURNTRANSFER, true); 
$result = curl_exec($c); 
$status = curl_getinfo($c, CURLINFO_HTTP_CODE); 
curl_close($c); 

switch ($status) { 
    case '200': $msg = 'OK'; break; 
    case '201': $msg = "Created - Success! The new post ID is $result.\n"; break; 
    case '400': $msg = 'Bad Request - There was at least one error while trying to save your post.'; break; 
    case '403': $msg = 'Forbidden - Your email address or password were incorrect.'; break; 
    default: $msg = $result; break; 
} 
echo '<p>'.$msg.'</p><pre>'.print_r($result,1).'</pre>';