Enregistrer des cookies entre deux curl demandes
Je sais que l'utilisation cURL
je peux voir mes reçu des cookies /en-têtes, en utilisant
curl --head www.google.com
Et je sais que je peux ajouter des en-têtes à ma demande l'aide de
curl --cookie "Key=Value" www.google.com
Je suis actuellement en train de travailler sur le test d'un problème qui nécessite des cookies persistants, et il peut y avoir beaucoup d'entre eux.
Comment puis-je efficace de conserver les cookies entre deux
cURL
demandes?
Si possible à l'aide d'un fichier temporaire pour le stockage.
OriginalL'auteur Matt Clark | 2015-06-10
Vous devez vous connecter pour publier un commentaire.
Utiliser le
--cookie-jar
ou--dump-header
paramètre pour enregistrer des cookies pour un fichier. Le--cookie
paramètre peut lire les cookies de ce fichier plus tard.Sinon, au lieu d'utiliser la ligne de commande cURL app, écrire du code qui utilise la librairie libCurl. Qui vous donnera plus de contrôle direct sur la gestion des cookies. libCurl est doté de plusieurs fonctionnalités liées à des cookies HTTP:
Options pour
curl_easy_getinfo()
:Options pour
curl_easy_setopt()
:CURLOPT_COOKIE - définir le contenu du Cookie HTTP en-tête
CURLOPT_COOKIEFILE - nom de fichier à lire les témoins de
CURLOPT_COOKIEJAR - nom de fichier pour stocker des cookies pour
CURLOPT_COOKIESESSION - démarrer une nouvelle session cookie
CURLOPT_COOKIELIST - ajouter ou de manipuler les cookies en mémoire
Puis vous pouvez enregistrer les cookies que vous voulez, et de les affecter au besoin pour plus tard, HTTP sessions.
-c
drapeau il y a longtemps, après avoir posé cette question - qui n'est jamais réalisé qu'il y avait une réponse posté ici. Merci.OriginalL'auteur Remy Lebeau