Récupérer un fichier en envoyant des headers

Fermé
Mrrraou Messages postés 68 Date d'inscription mercredi 12 février 2014 Statut Membre Dernière intervention 5 mars 2014 - Modifié par Mrrraou le 12/02/2014 à 10:19
Mrrraou Messages postés 68 Date d'inscription mercredi 12 février 2014 Statut Membre Dernière intervention 5 mars 2014 - 28 févr. 2014 à 23:57
Bonjour,
je recherche actuellement comment récupérer un fichier JSON en envoyant une information d'entête HTTP vers l'URL, c'est-à-dire que la page sur laquelle je veux récupérer les informations demande une authentification par token via le entête HTTP. Comment puis-je envoyer cette information via le header en PHP ?
Merci d'avance de votre réponse.
A voir également:

1 réponse

Profil bloqué
12 févr. 2014 à 10:05
avec un simple header Location sa ne fonctionne pas ?


<?php header("Location:ton_url&ton_token"); ?>


c'est un peu flou...

bon courage..
0
Mrrraou Messages postés 68 Date d'inscription mercredi 12 février 2014 Statut Membre Dernière intervention 5 mars 2014 4
12 févr. 2014 à 10:15
A vrai dire, ce n'est pas une page qui m'appartient et je souhaite récupérer le contenu via PHP, le token est dans l'entête HTTP. C'est ce qui me dérange justement, je ne sais pas comment faire. Merci quand même de votre aide.
0
Profil bloqué
12 févr. 2014 à 10:47
tu peux également utiliser la méthode curl pour passé en paramètre les différentes infos demandées (le token entre autre)...

je te laisse voir la doc sur CURL..

en espérant te mettre à minima sur la voie...
0
Mrrraou Messages postés 68 Date d'inscription mercredi 12 février 2014 Statut Membre Dernière intervention 5 mars 2014 4
12 févr. 2014 à 10:53
Merci beaucoup, je vais regarder ça, je vous tiens au courant.
0
Mrrraou Messages postés 68 Date d'inscription mercredi 12 février 2014 Statut Membre Dernière intervention 5 mars 2014 4
12 févr. 2014 à 13:53
J'ai lu la documentation sur cURL et envoyé via l'entête
Authorization : <token>
mais il me renvoie toujours
{"error":"Invalid token","code":202}
Voici mon code PHP:
header('Content-type: text/plain');
$crl = curl_init("http://api.du.site.web");

$headr = array();
$headr[] = 'Content-length: 0';
$headr[] = 'Content-type: application/x-www-form-urlencoded';
$headr[] = 'Authorization: ***************************************';

curl_setopt($crl, CURLOPT_HTTPHEADER,$headr);
curl_setopt($crl, CURLOPT_HEADER, true);
curl_setopt($crl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($crl, CURLOPT_SSL_VERIFYPEER, false);
$rest = curl_exec($crl);

curl_close($crl);

echo $rest;
Sachant que je dois envoyer cela en GET.
Merci d'avance pour votre aide.
0
Profil bloqué
12 févr. 2014 à 14:15
pour le moment à la vue de ton code je dirai que c'est normal, tu ne soumet aucune donnée, aucun token...

essai de voir ici sa pourrez surement t'aider :
http://plkt.fr/index.php/hacks/77-pratique-php-curl.html

$postFields=array();


// Tableau contenant les options de téléchargement
$options=array(
CURLOPT_URL => $url, // Url cible (l'url de la page que vous voulez télécharger)
CURLOPT_RETURNTRANSFER => true, // Retourner le contenu téléchargé dans une chaine (au lieu de l'afficher directement)
CURLOPT_HEADER => false, // Ne pas inclure l'entête de réponse du serveur dans la chaine retournée
CURLOPT_FAILONERROR => true, // Gestion des codes d'erreur HTTP supérieurs ou égaux à 400
CURLOPT_POST => true, // Effectuer une requête de type POST
CURLOPT_POSTFIELDS => $postFields // Le tableau associatif contenant les variables envoyées par POST au serveur
);

esperant t'aider...
0